学习了numpy,pandas,matplotlib之后,是不是对matplotlib的画图功能感到不满意,都9012年了,动态效果都没有的图片让人抓狂。
出色的ECharts相信大家也都听说过,制作的表格非常的优雅。不过对于前端一塌糊涂的我来说,想要快速上手ECharts还是有难度的,还好我们有万能的python,果不其然。简单的搜索,发现已经有国内的牛人大神帮我们开发好了。python的强大之一,就是我们可以站在巨人的肩膀上,做喜欢的事情!
pip
pyecharts也提供了大部分的表格支持,除了小部分的地图库需要额外下载,我们暂时先不提,这里我们先介绍条形图。
from pyechart.charts import Bar
bar = Bar() # 实列化一个柱状图对象
bar.add_xaxis(['苹果', '葡萄', '橘子']) # 为柱状图添加X轴刻度,参数为列表
bar.add_yaxis('水果商A', [3.2, 4,1, 2.5]) # 添加Y轴刻度,第一个参数为系列名称,第二个为数据(列表)
bar.render_notebook() # 这里我使用的是jupyter,如果没有使用jupyter的化可以bar.render()在用户目录生成html文件
这样一个简单的柱状图就生成了,但是怎么这么不协调呢。通过阅读源代码,发现还可以这样设置。
bar.add_yaxis('水果商A', [3.2, 4.1, 2.5], color='#FFFFBB', category_gap="50%") #color设置颜色,
#category_gap设置间隔
bar.add_yaxis('水果商B', [2.7, 4.6, 3.1], color='#FFFFBB', category_gap="50%") # 添加多条y轴
bar.add_yaxis('水果商C', [2.9, 4.0, 3.2], color='#CC0000', category_gap="50%")
这样就是一张还可以看的下去的图表啦(必须承认我对颜色搭配的理解是有一定的深度的)!但是感觉是并不是还少点什么呢,标题还没有。别人看了这图什么意思只能靠猜。
怎么设置标题呢。pyecharts面向options的设计方法,有很多功能都可以通过设置全局选项来完成。
bar.set_global_opts(title_opts={"text": "水果价格", "subtext": "副标题"},
toolbox_opts=opts.ToolboxOpts(),
legend_opts=opts.LegendOpts(is_show=False)) #三条代码分别完成标题,显示工具栏,关闭图列
还有系列设置,可以完成对文字样式和图形等等的样式改变。
bar.set_galobl_opts(datazoom_opts=opts.DataZoomOpts()) # 水平滑动
bar.reversal_axis() # 翻转xy轴
bar.set_series_opts(
label_opts=opts.LabelOpts(is_show=False),
) # 堆叠数据
怎么样,是不是很简单。相信大家都能学会,下次我们再一起学习更复杂的功能和图形。