pyecharts可视化

pyecharts可视化

  • 概述:Echarts 是一个由百度开源的数据可视化,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。而 Python 是一门富有表达力的语言,很适合用于数据处理。当数据分析遇上数据可视化时,pyecharts 诞生了。
  • 特性:
    简洁的 API 设计,使用如丝滑般流畅,支持链式调用
    囊括了 30+ 种常见图表,应有尽有
    支持主流 Notebook 环境,Jupyter Notebook 和 JupyterLab
    可轻松集成至 Flask,Django 等主流 Web 框架
    高度灵活的配置项,可轻松搭配出精美的图表
    详细的文档和示例,帮助开发者更快的上手项目
    多达 400+ 地图,为地理数据可视化提供强有力的支持

本次使用的是最新版的pyecharts(version 1.1.0 - 2019.5.14(current))与前面的有所不同
1、数据1:

相机 574513370.0
短视频 460800929.0
视频 357233634.0
浏览器 237785883.0
商城 153678479.0
购票 104248080.0
小说 76975429.0
聊天 73931851.0
小工具 64636396.0
理财记账 55401117.0

这是在豌豆荚中获取的数据,表示app类型下载次数:
用条形图表示为:
在这里插入图片描述
代码如下:

 bar = (

                    Bar()
                        .add_xaxis([ "总数"])
                        .set_global_opts(title_opts=opts.TitleOpts(title="APP类型", subtitle="APP类型"))
            )
 for item in items:
                print(item["_id"],item["sum_app"])
                bar.add_yaxis(item["_id"],[float(item["sum_app"])])
 bar.render("APP类型.html")

用饼图表示:
在这里插入图片描述
代码如下:

 pie = (
                Pie()
                    .add(
                    "",
                    data_pair=[(i["_id"],i["sum_app"]) for i in items],    #数据为[(),()]
                    radius=["30%", "75%"],
                    center=["50%", "50%"],
                    rosetype="radius",
                    label_opts=opts.LabelOpts(is_show=False),
                )
                    .set_global_opts(title_opts=opts.TitleOpts(title="APP比例"))
                    .set_series_opts(label_opts=opts.LabelOpts(formatter="{b}: {c}"))

            )
  pie.render("pie_APP类型.html")           

数据2:

{'_id': ObjectId('5cd7c7f106464a1a2e443ee5'), 'app_name': '快手', 'cate_name': '摄影图像', 'child_cate_name': '相机', 'comment': '记录生活中有趣的精彩瞬间', 'icon_url': 'https://android-artworks.25pp.com/fs08/2019/05/08/8/110_a5f8e78098dd93e4d0db4e094c505ff6_con_130x130.png', 'install': 560000000.0, 'volume': '70.95MB'}
{'_id': ObjectId('5cd7c69606464a1a2e4396fa'), 'app_name': '抖音短视频', 'cate_name': '影音播放', 'child_cate_name': '视频', 'comment': '音乐短视频软件,记录生活', 'icon_url': 'https://android-artworks.25pp.com/fs08/2019/05/08/0/110_54bd19d6bb330d544243f374ef5f82c7_con_130x130.png', 'install': 300000000.0, 'volume': '74.93MB'}
{'_id': ObjectId('5cd7c7e006464a1a2e443a25'), 'app_name': 'PP视频', 'cate_name': '摄影图像', 'child_cate_name': '短视频', 'comment': '因法之名中超独播', 'icon_url': 'https://android-artworks.25pp.com/fs08/2019/05/06/3/110_d401ffd3ce81e21f9aece04966830768_con_130x130.png', 'install': 300000000.0, 'volume': '84.45MB'}
{'_id': ObjectId('5cd7ca3e06464a1a2e44e845'), 'app_name': '搜狗浏览器', 'cate_name': '系统工具', 'child_cate_name': '浏览器', 'comment': '跨终端无缝体验,更快更流畅', 'icon_url': 'https://android-artworks.25pp.com/fs08/2019/05/06/4/2_4767f0eedb7a9007f55010e8cb0b49b4_con_130x130.png', 'install': 130000000.0, 'volume': '38.52MB'}
{'_id': ObjectId('5cd7c7e006464a1a2e443a5b'), 'app_name': '西瓜视频', 'cate_name': '摄影图像', 'child_cate_name': '短视频', 'comment': '懂得生活趣味的人都在用', 'icon_url': 'https://android-artworks.25pp.com/fs08/2019/04/30/11/110_df3642ec6802c165499293290faa17b8_con_130x130.png', 'install': 130000000.0, 'volume': '14.72MB'}
{'_id': ObjectId('5cd7c7cb06464a1a2e44332e'), 'app_name': '唯品会', 'cate_name': '网上购物', 'child_cate_name': '商城', 'comment': '全球精选正品特卖', 'icon_url': 'https://android-artworks.25pp.com/fs08/2019/04/30/5/110_1fa49397b975103927401c0b34fbd25d_con_130x130.png', 'install': 82081000.0, 'volume': '56.27MB'}
{'_id': ObjectId('5cd7c78d06464a1a2e441812'), 'app_name': '携程旅行', 'cate_name': '旅游出行', 'child_cate_name': '购票', 'comment': '动动指头,说走就走', 'icon_url': 'https://android-artworks.25pp.com/fs08/2019/05/06/8/110_e48d2872d0d87fc6bb8bd7ac1eca0295_con_130x130.png', 'install': 80511000.0, 'volume': '88.18MB'}
{'_id': ObjectId('5cd7ca3c06464a1a2e44e7ec'), 'app_name': 'UC浏览器', 'cate_name': '系统工具', 'child_cate_name': '浏览器', 'comment': '精彩资讯一刷即有', 'icon_url': 'https://android-artworks.25pp.com/fs08/2019/05/09/4/106_03e4f7bc555040ccbd7edae0e517d90c_con_130x130.png', 'install': 78939000.0, 'volume': '49.82MB'}
{'_id': ObjectId('5cd7c69906464a1a2e4398a5'), 'app_name': '中华万年历', 'cate_name': '生活休闲', 'child_cate_name': '小工具', 'comment': '查农历问风水,超过2亿中国人的选择', 'icon_url': 'https://android-artworks.25pp.com/fs08/2019/05/06/10/110_91f51359ce82762d5edcfeb02082c9f3_con_130x130.png', 'install': 51210000.0, 'volume': '14.46MB'}
{'_id': ObjectId('5cd7c7cb06464a1a2e44333e'), 'app_name': '手机淘宝', 'cate_name': '网上购物', 'child_cate_name': '商城', 'comment': '手机网购,一切商品全都有', 'icon_url': 'https://android-artworks.25pp.com/fs08/2019/04/30/11/110_76cc982ee58641bc0f9a06091c644633_con_130x130.png', 'install': 46664000.0, 'volume': '106.03MB'}

这是豌豆荚中下载app排名的前10
条形图表示:
在这里插入图片描述
代码如下:

 bar_sort = (

                Bar()
            .add_xaxis(['排名'])

                    .set_global_opts(title_opts=opts.TitleOpts(title="APP排名", subtitle="APP排名"))
            )
 for sort in sorts:
           bar_sort.add_yaxis(sort["app_name"],[sort["install"]])
 bar_sort.render("APP排名.html")

词云:
在这里插入图片描述

代码如下:

 words=[]
 for sort in sorts:
                words.append((sort["app_name"],sort["install"]))
yun = (
                WordCloud()
                    .add("", words, word_size_range=[20, 100], shape=SymbolType.DIAMOND)
                    .set_global_opts(title_opts=opts.TitleOpts(title="词云——APP排名"))
            )
 yun.render("词云——APP排名.html")

猜你喜欢

转载自blog.csdn.net/huangwencai123/article/details/90245004