ECharts 是一个由百度开源的数据可视化工具,是基于 Javascript 的图表库,凭借着良好的交互性,精巧的图表设计,得到了众多开发者的认可。Python 是一门富有表达力的语言,很适合用于数据处理,Python 有 基于 ECharts 的数据可视化库 pyecharts,pyecharts 支持 Jupyter Notebook 等主流 Notebook 环境。
ECharts 图表样例
Echarts 包括丰富的图表类型:包括折线图、柱状图、饼图、K线图、雷达图、路径图、主题河流图、地理坐标图、3D 地图、3D 地球、GL 关系图等,这些图表可以用 JavaScript 方便的集成到 H5 等网页作品中,pyecharts 针对 Python 提供了便捷的调用方式。更多的 ECharts 可视化实例请访问以下网站进行查看。
ECharts 案例: https://echarts.apache.org/examples/zh/index.html
常用图表介绍
- 柱状/条形图: 通过 柱形的高度/条形的宽度 来表现数据的大小,用于有至少一个类目轴或时间轴的直角坐标系上。
- 折线图 :折线图是用折线将各个数据点标志连接起来的图表,用于展现数据的变化趋势。可用于直角坐标系和极坐标系上。
- 关系图: 用于展现节点以及节点之间的关系数据。
- 线图: 用于带有起点和终点信息的线数据的绘制,主要用于地图上的航线,路线的可视化。
- 散点(气泡)图 : 直角坐标系上的散点图可以用来展现数据的 x,y 之间的关系,如果数据项有多个维度,其它维度的值可以通过不同大小的 symbol 展现成气泡图,也可以用颜色来表现。
- 雷达图:主要用于表现多变量的数据,例如球员的各个属性分析。
- 旭日图:由多层的环形图组成,在数据结构上,内圈是外圈的父节点。因此,它既能像饼图一样表现局部和整体的占比,又能像矩形树图一样表现层级关系。
- 其他常用的各类图表
Jupyter 调用 pyecharts
pyecharts 提供了各种生成上面 Demo 的代码示例,可以参考实现。
示例代码地址:https://github.com/pyecharts/pyecharts-gallery
先介绍一些可能会用到的基本函数:
- add_xaxis() 、add_yaxis() 添加 x/y 轴数据,这是图表的数据输入;
- set_global_opts() 全局配置方法,配置标题等信息;
- render() 生成 render.html 的文件,可以传入路径参数 ,设置保存位置 ;
- render_notebook() 在 Notebook 中渲染输出生成的图表;
从 V1 版本开始支持链式调用,链式调用方法如下所示:
1 2 3 4 5 6 7 8 9 10 11 |
from pyecharts.charts import Bar from pyecharts import options as opts bar = ( Bar() .add_xaxis(["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"]) .add_yaxis("商家A", [114, 55, 27, 101, 125, 27, 105]) .add_yaxis("商家B", [57, 134, 137, 129, 145, 60, 49]) .set_global_opts(title_opts=opts.TitleOpts(title="某商场销售情况")) ) bar.render() |
不习惯链式调用的开发者依旧可以单独调用方法,调用方法如下:
1 2 3 4 5 6 7 8 9 10 |
from pyecharts.charts import Bar from pyecharts import options as opts bar = Bar() bar.add_xaxis(["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"]) bar.add_yaxis("商家A", [114, 55, 27, 101, 125, 27, 105]) bar.add_yaxis("商家B", [57, 134, 137, 129, 145, 60, 49]) bar.set_global_opts(title_opts=opts.TitleOpts(title="某商场销售情况")) bar.render() # 生成 render.html 的文件 # bar.render_notebook() # 在 Jupyter Notebook 中渲染 |
Jupyter Notebook 直接调用 render_notebook 随时随地渲染图表,直接生成到 Jupyter Notebook 中,上面代码生成图表如下所示。
其他图表可以参考给出的官方文档给出的样例代码进行修改即可。
参考资料
[1] ECharts 文档 https://echarts.apache.org/zh/tutorial.html
[2] pyecharts 文档 https://pyecharts.org/#/zh-cn/intro
[3] ECharts 样例 https://echarts.apache.org/examples/zh/index.html
原创文章,作者:麒麟,如若转载,请注明出处:https://zhouqilin.tech/104.html