收藏 分享(赏)

基于Python的数据可视化工具.docx

上传人:dzzj200808 文档编号:2980463 上传时间:2018-10-01 格式:DOCX 页数:42 大小:1.19MB
下载 相关 举报
基于Python的数据可视化工具.docx_第1页
第1页 / 共42页
基于Python的数据可视化工具.docx_第2页
第2页 / 共42页
基于Python的数据可视化工具.docx_第3页
第3页 / 共42页
基于Python的数据可视化工具.docx_第4页
第4页 / 共42页
基于Python的数据可视化工具.docx_第5页
第5页 / 共42页
点击查看更多>>
资源描述

1、基于 Python 的数据可 视化工具如何做 Python 的数据可视化?pyecharts 是一个用于生成 Echarts 图表的类库。 Echarts 是 百度开源的一个数据可视化 JS 库。主要用于数据可视化。一、安装pyecharts 兼容 Python2 和 Python3。目前版本为 0.1.4pip install pyecharts二、入门首先开始来绘制你的第一个图表frompyecharts importBarbar =Bar(“我的第一个图表“, “这里是副标题“)bar.add(“服装“, “衬衫“, “羊毛衫“, “雪纺衫“, “裤子“, “高跟鞋 “, “袜子“, 5

2、, 20, 36, 10, 75, 90)bar.show_config()bar.render()Tip:可以按右边的下载按钮将图片下载到本地add()主要方法,用于添加图表的数据和设置各种配置项show_config()打印输出图表的所有配置项render()默认将会在根目录下生成一个 render.html 的文件,支持 path 参数,设置文件保存位置,如 render(r“e:my_first_chart.html“),文件用浏览器打开。默认的编码类型为 UTF-8,在 Python3 中是没什么问题的,Python3 对中文的支持好很多。但是在 Python2 中,编码的处理是个很

3、头疼的问题,暂时没能找到完美的解决方法,目前只能通过文本编辑器自己进行二次编码,我用的是 Visual Studio Code,先通过 Gbk 编码重新打开,然后再用 UTF-8 重新保存,这样用浏览 器打开的话就不会出现中文乱码问题了。基本上所有的图表类型都是这样绘制的:1.chart_name = Type() 初始化具体类型图表。2.3.add() 添加数据及配置项 。4.5.render() 生成 .html 文件。6.三、图表类型因篇幅原因,这里只给出了每种图表类型的示例(代码 + 生成图表),目的是为了引起读者的兴趣。详细参数的介绍请参考项目 README.md 文档1 Bar(柱

4、状图/ 条形图)frompyecharts importBarbar =Bar(“标记线和标记点示例“)bar.add(“商家 A“, attr, v1, mark_point=“average“)bar.add(“商家 B“, attr, v2, mark_line=“min“, “max“)bar.render()frompyecharts importBarbar =Bar(“x 轴和 y 轴交换“)bar.add(“商家 A“, attr, v1)bar.add(“商家 B“, attr, v2, is_convert=True)bar.render()2 EffectScatter(

5、带有涟漪特效动画的散点图)frompyecharts importEffectScatterv1 =10, 20, 30, 40, 50, 60v2 =25, 20, 15, 10, 60, 33es =EffectScatter(“动态散点 图示例“)es.add(“effectScatter“, v1, v2)es.render()es =EffectScatter(“动态 散点图各种图形示例“)es.add(“, 10, 10, symbol_size=20, effect_scale=3.5, effect_period=3, symbol=“pin“)es.add(“, 20, 20

6、, symbol_size=12, effect_scale=4.5, effect_period=4,symbol=“rect“)es.add(“, 30, 30, symbol_size=30, effect_scale=5.5, effect_period=5,symbol=“roundRect“)es.add(“, 40, 40, symbol_size=10, effect_scale=6.5, effect_brushtype=fill,symbol=“diamond“)es.add(“, 50, 50, symbol_size=16, effect_scale=5.5, effe

7、ct_period=3,symbol=“arrow“)es.add(“, 60, 60, symbol_size=6, effect_scale=2.5, effect_period=3,symbol=“triangle“)es.render()3 Funnel(漏斗图)frompyecharts importFunnelattr =“衬衫“, “羊毛衫“, “雪纺衫“, “裤子“, “高跟鞋“, “袜子“value =20, 40, 60, 80, 100, 120funnel =Funnel(“漏斗图示例“)funnel.add(“ 商品“, attr, value, is_label_s

8、how=True, label_pos=“inside“, label_text_color=“#fff“)funnel.render()4 Gauge(仪 表盘)frompyecharts importGaugegauge =Gauge(“仪表盘示例“)gauge.add(“业务指标“, “完成率“, 66.66)gauge.show_config()gauge.render()5 Geo(地理坐标系)frompyecharts importGeodata = (“海门“, 9),(“鄂尔多斯“, 12),(“招远“, 12),(“舟山“, 12),(“齐齐哈尔“, 14),(“盐城“, 1

9、5), (“赤峰“, 16),(“青岛“, 18),(“乳山“, 18),(“金昌“, 19),(“泉州“, 21),(“莱西“, 21), (“日照“, 21),(“胶南“, 22),(“南通“, 23),(“拉萨“, 24),(“云浮“, 24),(“梅州“, 25).geo =Geo(“全国主要城市空气质量“, “data from pm2.5“, title_color=“#fff“, title_pos=“center“,width=1200, height=600, background_color=#404a59)attr, value =geo.cast(data)geo.ad

10、d(“, attr, value, visual_range=0, 200, visual_text_color=“#fff“, symbol_size=15, is_visualmap=True)geo.show_config()geo.render()frompyecharts importGeodata =(“海门“, 9), (“鄂尔多斯“, 12), (“招远“, 12), (“舟山“, 12), (“齐齐哈尔“, 14), (“盐城“, 15)geo =Geo(“全国主要城市空气质量“, “data from pm2.5“, title_color=“#fff“, title_po

11、s=“center“, width=1200, height=600, background_color=#404a59)attr, value =geo.cast(data)geo.add(“, attr, value, type=“effectScatter“, is_random=True, effect_scale=5)geo.show_config()geo.render()6 Graph(关系 图)frompyecharts importGraphnodes =“name“: “结点1“, “symbolSize“: 10, “name“: “结点2“, “symbolSize“:

12、 20, “name“: “结点3“, “symbolSize“: 30, “name“: “结点4“, “symbolSize“: 40, “name“: “结点5“, “symbolSize“: 50, “name“: “结点6“, “symbolSize“: 40, “name“: “结点7“, “symbolSize“: 30, “name“: “结点8“, “symbolSize“: 20links =fori innodes: forj innodes: links.append(“source“: i.get(name), “target“: j.get(name)graph =

13、Graph(“关系图-环形布局示例“)graph.add(“, nodes, links, is_label_show=True, repulsion=8000, layout=circular, label_text_color=None)graph.show_config()graph.render()frompyecharts importGraphimportjsonwithopen(“jsonweibo.json“, “r“, encoding=“utf-8“) asf: j =json.load(f) nodes, links, categories, cont, mid, use

14、rl =jgraph =Graph(“微博转发关系图“, width=1200, height=600)graph.add(“, nodes, links, categories, label_pos=“right“, repulsion=50, is_legend_show=False, line_curve=0.2, label_text_color=None)graph.show_config()graph.render()7 Line(折线/面积图)frompyecharts importLineattr =“衬衫“, “羊毛衫“, “雪纺衫“, “裤子“, “高跟鞋“, “袜子“v1

15、 =5, 20, 36, 10, 10, 100v2 =55, 60, 16, 20, 15, 80line =Line(“折线图示例“)line.add(“商家 A“, attr, v1, mark_point=“average“)line.add(“商家 B“, attr, v2, is_smooth=True, mark_line=“max“, “average“)line.show_config()line.render()line =Line(“折线图-阶梯 图示例“)line.add(“ 商家 A“, attr, v1, is_step=True, is_label_show=Tr

16、ue)line.show_config()line.render()line =Line(“折线图-面积图 示例“)line.add(“ 商家 A“, attr, v1, is_fill=True, line_opacity=0.2, area_opacity=0.4, symbol=None)line.add(“商家 B“, attr, v2, is_fill=True, area_color=#000, area_opacity=0.3, is_smooth=True)line.show_config()line.render()8 Liquid(水球 图)frompyecharts im

17、portLiquidliquid =Liquid(“水球图示例“)liquid.add(“Liquid“, 0.6)liquid.show_config()liquid.render()frompyecharts importLiquidliquid =Liquid(“水球图示例“)liquid.add(“Liquid“, 0.6, 0.5, 0.4, 0.3, is_liquid_outline_show=False)liquid.show_config()liquid.render()frompyecharts importLiquidliquid =Liquid(“水球图示例“)liqu

18、id.add(“Liquid“, 0.6, 0.5, 0.4, 0.3, is_liquid_animation=False, shape=diamond)liquid.show_config()liquid.render()9 Map(地图)frompyecharts importMapvalue =155, 10, 66, 78, 33, 80, 190, 53, 49.6attr =“福建“, “山东“, “北京“, “上海“, “甘肃“, “新疆 “, “河南“, “广西“, “西藏“map=Map(“Map 结合 VisualMap 示例“, width=1200, height=6

19、00)map.add(“, attr, value, maptype=china, is_visualmap=True, visual_text_color=#000)map.show_config()map.render()frompyecharts importMapvalue =20, 190, 253, 77, 65attr =汕 头市, 汕尾市, 揭阳市, 阳江市, 肇庆市map=Map(“广东地图示例 “, width=1200, height=600)map.add(“, attr, value, maptype=广东, is_visualmap=True, visual_tex

20、t_color=#000)map.show_config()map.render()10 Parallel(平行坐标系)frompyecharts importParallelc_schema = “dim“: 0, “name“: “data“, “dim“: 1, “name“: “AQI“, “dim“: 2, “name“: “PM2.5“, “dim“: 3, “name“: “PM10“, “dim“: 4, “name“: “CO“, “dim“: 5, “name“: “NO2“, “dim“: 6, “name“: “CO2“, “dim“: 7, “name“: “等级“,

21、 “type“: “category“, “data“: 优, 良, 轻度污染, 中度污 染, 重度污染, 严重污染data = 1, 91, 45, 125, 0.82, 34, 23, “良“, 2, 65, 27, 78, 0.86, 45, 29, “良“, 3, 83, 60, 84, 1.09, 73, 27, “良“, 4, 109, 81, 121, 1.28, 68, 51, “轻度污染“, 5, 106, 77, 114, 1.07, 55, 51, “轻度污染“, 6, 109, 81, 121, 1.28, 68, 51, “轻度污染“, 7, 106, 77, 114

22、, 1.07, 55, 51, “轻度污染“, 8, 89, 65, 78, 0.86, 51, 26, “良“, 9, 53, 33, 47, 0.64, 50, 17, “良“, 10, 80, 55, 80, 1.01, 75, 24, “良“, 11, 117, 81, 124, 1.03, 45, 24, “轻度污 染“, 12, 99, 71, 142, 1.1, 62, 42, “良“, 13, 95, 69, 130, 1.28, 74, 50, “良“, 14, 116, 87, 131, 1.47, 84, 40, “轻度污 染“parallel =Parallel(“平行

23、坐 标系- 用户自定义指示器“)parallel.config(c_schema=c_schema)parallel.add(“parallel“, data)parallel.show_config()parallel.render()11 Pie(饼图)frompyecharts importPieattr =“衬衫“, “羊毛衫“, “雪纺衫“, “裤子“, “高跟鞋“, “袜子“v1 =11, 12, 13, 10, 10, 10pie =Pie(“饼图 示例“)pie.add(“, attr, v1, is_label_show=True)pie.show_config()pie.r

24、ender()frompyecharts importPieattr =“衬衫“, “羊毛衫“, “雪纺衫“, “裤子“, “高跟鞋“, “袜子“v1 =11, 12, 13, 10, 10, 10v2 =19, 21, 32, 20, 20, 33pie =Pie(“饼图- 玫瑰图示例“, title_pos=center, width=900)pie.add(“商品 A“, attr, v1, center=25, 50, is_random=True, radius=30, 75,rosetype=radius)pie.add(“商品 B“, attr, v2, center=75, 5

25、0, is_random=True, radius=30, 75,rosetype=area, is_legend_show=False, is_label_show=True)pie.show_config() pie.render()12 Polar(极坐标系)frompyecharts importPolarradius =周一, 周二, 周三, 周四, 周五, 周六, 周日 polar =Polar(“极坐标系- 堆叠柱状图示例“, width=1200, height=600)polar.add(“A“, 1, 2, 3, 4, 3, 5, 1, radius_data=radius

26、, type=barRadius, is_stack=True)polar.add(“B“, 2, 4, 6, 1, 2, 3, 1, radius_data=radius, type=barRadius, is_stack=True)polar.add(“C“, 1, 2, 3, 4, 1, 2, 5, radius_data=radius, type=barRadius, is_stack=True)polar.show_config()polar.render()frompyecharts importPolarradius =周一, 周二, 周三, 周四, 周五, 周六, 周日 pol

27、ar =Polar(“极坐标系- 堆叠柱状图示例“, width=1200, height=600)polar.add(“, 1, 2, 3, 4, 3, 5, 1, radius_data=radius, type=barAngle, is_stack=True)polar.add(“, 2, 4, 6, 1, 2, 3, 1, radius_data=radius, type=barAngle, is_stack=True)polar.add(“, 1, 2, 3, 4, 1, 2, 5, radius_data=radius, type=barAngle, is_stack=True)p

28、olar.show_config()polar.render()13 Radar(雷达图)frompyecharts importRadarschema = (“销售“, 6500), (“管理“, 16000), (“信息技术“, 30000), (“客服 “, 38000), (“研发“, 52000), (“市场“, 25000)v1 =4300, 10000, 28000, 35000, 50000, 19000v2 =5000, 14000, 28000, 31000, 42000, 21000radar =Radar()radar.config(schema)radar.add(“

29、预算分配“, v1, is_splitline=True, is_axisline_show=True)radar.add(“实际开销“, v2, label_color=“#4e79a7“, is_area_show=False)radar.show_config()radar.render()value_bj = 55, 9, 56, 0.46, 18, 6, 1, 25, 11, 21, 0.65, 34, 9, 2, 56, 7, 63, 0.3, 14, 5, 3, 33, 7, 29, 0.33, 16, 6, 4.value_sh = 91, 45, 125, 0.82, 34,

30、 23, 1, 65, 27, 78, 0.86, 45, 29, 2, 83, 60, 84, 1.09, 73, 27, 3, 109, 81, 121, 1.28, 68, 51, 4.c_schema=“name“:“AQI“, “max“: 300, “min“: 5, “name“: “PM2.5“, “max“: 250, “min“: 20, “name“: “PM10“, “max“: 300, “min“: 5, “name“: “CO“, “max“: 5, “name“: “NO2“, “max“: 200, “name“: “SO2“, “max“: 100radar

31、 =Radar()radar.config(c_schema=c_schema, shape=circle)radar.add(“北京“, value_bj, item_color=“#f9713c“, symbol=None)radar.add(“上海“, value_sh, item_color=“#b3e4a1“, symbol=None)radar.show_config()radar.render()14 Scatter(散点图)frompyecharts importScatterv1 =10, 20, 30, 40, 50,60v2 =10, 20, 30, 40, 50, 60

32、scatter =Scatter(“散点图示例“)scatter.add(“A“, v1, v2)scatter.add(“B“, v1:-1, v2)scatter.show_config()scatter.render()散点打印 Pyecharts 字体。frompyecharts importScatterscatter =Scatter(“散点图示例“)v1, v2 =scatter.draw(“/images/pyecharts-0.png“)scatter.add(“pyecharts“, v1, v2, is_random=True)scatter.show_config()s

33、catter.render()15 WordCloud(词云图)frompyecharts importWordCloudname =Sam S Club, Macys, Amy Schumer, Jurassic World, Charter Communications, Chick Fil A, Planet Fitness, Pitch Perfect, Express, Home, Johnny Depp, Lena Dunham, Lewis Hamilton, KXAN, Mary Ellen Mark, Farrah Abraham, Rita Ora, Serena Will

34、iams, NCAA baseball tournament, Point Breakvalue =10000, 6181, 4386, 4055, 2467, 2244, 1898, 1484, 1112, 965, 847, 582, 555, 550, 462, 366, 360, 282, 273, 265wordcloud =WordCloud(width=1300, height=620)wordcloud.add(“, name, value, word_size_range=20, 100)wordcloud.show_config()wordcloud.render()wordcloud =WordCloud(width=1300, height=620)wordcloud.add(“, name, value, word_size_range=30, 100, shape=diamond)wordcloud.show_config()wordcloud.render()五、用户自定义用户还可以自定义结合 Line/Bar 图表需使用 get_series() 和 custom() 方法get_series()“获取图表的 series 数据 “custom(series)追加自定义图表类型 series - dict追加图表类型的 series 数据

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 专业基础教材

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报