欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Python数据可视化系列-02-pyecharts可视化非常cool

程序员文章站 2022-03-13 15:56:35
pyecharts介绍 "pyecharts网站" Pyecharts生成的图像,动态效果非常cool。在HTML上展示很是perfect。matplotlib用于科研,但是pyecharts用于展示和讲座确实很好。 pyecharts 是一个用于生成 Echarts 图表的类库。 Echarts ......

pyecharts介绍

pyecharts生成的图像,动态效果非常cool。在html上展示很是perfect。matplotlib用于科研,但是pyecharts用于展示和讲座确实很好。

pyecharts 是一个用于生成 echarts 图表的类库。
echarts 是百度开源的一个数据可视化 js 库。
用 echarts 生成的图可视化效果非常棒。

画图举例

bar图

Python数据可视化系列-02-pyecharts可视化非常cool

from pyecharts import pie, bar, gauge, effectscatter, wordcloud, map, grid, line, timeline
import random
attr = ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高跟鞋', '袜子']
v1 = [5, 20, 36, 10, 75, 90]
v2 = [10, 25, 8, 60, 20, 80]
bar = bar('柱状图数据堆叠示例')
bar.add('商家a', attr, v1, mark_point=['average'], is_stack=true)
bar.add('商家b', attr, v2, mark_point=['min', 'max'], is_stack=true)
bar.render('bar.html')
# ------------------------------------
attr = ['{}天'.format(i) for i in range(30)]
v1 = [random.randint(1, 30) for _ in range(30)]
bar = bar('bar - datazoom - slider示例')
bar.add('', attr, v1, is_label_show=true, 
        is_datazoom_show=true, is_more_utils=true)
bar.render('bar_slider.html')

gauge仪表盘图

Python数据可视化系列-02-pyecharts可视化非常cool

gauge = gauge('仪表盘示例')
gauge.add('业务指标', '完成率', 66.66)
gauge.render('gauge.html')

effectscatter动态散点图

Python数据可视化系列-02-pyecharts可视化非常cool

v1 = [10, 20, 30, 40, 50, 60]
v2 = [25, 20, 15, 10, 60, 33]
es = effectscatter('动态散点图')
es.add('effectscatter', v1, v2)
es.render('effectscatter.html')

wordcloud词云图

Python数据可视化系列-02-pyecharts可视化非常cool

name = [u'古诗', u'textx.txt', u'hadoop', u'flask']
value = [10000, 6000, 4000, 3000]
wd = wordcloud(width=1300, height=620)
wd.add('', name, value, word_size_range=(20, 100))
wd.render('wordcloud.html')

pie饼图

Python数据可视化系列-02-pyecharts可视化非常cool

attr = ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高 跟鞋', '袜子']
v1 = [11, 12, 13, 10, 10, 10]
pie = pie('饼图示例')
pie.add('服装', attr, v1, is_label_show=true)
pie.render('pie.html')

grid 并行显示多张图

Python数据可视化系列-02-pyecharts可视化非常cool

attr = ['衬衫', '羊毛衫', '雪纺衫', '裤子', '高 跟鞋', '袜子']
v1 = [5, 20, 36, 10, 75, 90]
v2 = [10, 25, 8, 60, 20, 80]
bar = bar('柱状图示例', height=720)
bar.add('商家a', attr, v1, is_stack=true)
bar.add('商家b', attr, v2, is_stack=true)
line = line('折线图示例', title_top='50%')
attr = ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
line.add('最高气温',
         attr,
         [11, 11, 15, 13, 12, 13, 10],
         mark_point=['max', 'min'],
         mark_line=['average'],
         )
line.add('最低气温',
         attr,
         [1, -2, 2, 5, 3, 2, 0],
         mark_point=['max', 'min'],
         mark_line=['average'],
         legend_top='50%'
         )
grid = grid()
grid.add(bar, grid_bottom='60%')
grid.add(line, grid_top='60%')
grid.render('grid.html')

timeline提供时间线轮播多张图

Python数据可视化系列-02-pyecharts可视化非常cool

attr = ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
pie_1 = pie("2012 年销量比例", "数据纯属虚构")
pie_1.add("秋季", attr, [random.randint(10, 100) for _ in range(6)],
          is_label_show=true, radius=[30, 55], rosetype='radius')

pie_2 = pie("2013 年销量比例", "数据纯属虚构")
pie_2.add("秋季", attr, [random.randint(10, 100) for _ in range(6)],
          is_label_show=true, radius=[30, 55], rosetype='radius')

pie_3 = pie("2014 年销量比例", "数据纯属虚构")
pie_3.add("秋季", attr, [random.randint(10, 100) for _ in range(6)],
          is_label_show=true, radius=[30, 55], rosetype='radius')

pie_4 = pie("2015 年销量比例", "数据纯属虚构")
pie_4.add("秋季", attr, [random.randint(10, 100) for _ in range(6)],
          is_label_show=true, radius=[30, 55], rosetype='radius')

pie_5 = pie("2016 年销量比例", "数据纯属虚构")
pie_5.add("秋季", attr, [random.randint(10, 100) for _ in range(6)],
          is_label_show=true, radius=[30, 55], rosetype='radius')

timeline = timeline(is_auto_play=true, timeline_bottom=0)

timeline.add(pie_1, '2012 年')
timeline.add(pie_2, '2013 年')
timeline.add(pie_3, '2014 年')
timeline.add(pie_4, '2015 年')
timeline.add(pie_5, '2016 年')
timeline.render('timeline.html')

可视化图像类

bar(柱状图/条形图) 
bar3d(3d 柱状图) 
boxplot(箱形图) 
effectscatter(带有涟漪特效动画的散点图) 
funnel(漏斗图) 
gauge(仪表盘) 
geo(地理坐标系) 
graph(关系图) 
heatmap(热力图) 
kline(k线图) 
line(折线/面积图) 
line3d(3d 折线图) 
liquid(水球图) 
map(地图) 
parallel(平行坐标系) 
pie(饼图) 
polar(极坐标系) 
radar(雷达图) 
sankey(桑基图) 
scatter(散点图) 
scatter3d(3d 散点图) 
themeriver(主题河流图) 
wordcloud(词云图)
grid 类:并行显示多张图 
overlap 类:结合不同类型图表叠加画在同张图上 
page 类:同一网页按顺序展示多图 
timeline 类:提供时间线轮播多张图

总结

  1. 不断向他人学习
  2. 尽可能的理解自己看到的知识
  3. 多动手,多行动

参考资料

:本文参考网上资料,并经过自己思考,添加图像进行更加直观解释,参考资料较多,很难找到原始引用点,故而列举自己看到的。

[1] https://blog.****.net/u013421629/article/details/78183637?locationnum=8&fps=1
[2]
[2]