有读者说〖PyEcharts〗一贴里的图美如画,但是版本是 pyecharts v0.5,用现在 v1.0 来运行会出错,建议我再写篇 pyecharts v1.0 的。我最不喜欢让读者失望,这不我就来了。
用 v1.0 来运行 v0.5 的代码是肯定会报错的,v0.5 和 v1 间不兼容,v1 是一个全新的版本。首先来回顾 v0.5 的方法总结。
PyEcharts v0.5 方法总结对 pyecharts 中的所有原件,都是先创建 (可以带些必要属性,比如标题和尺寸),再用 add 方法添加额外属性。其通用化流程为
object = Object( 必要属性 )
object.add( 额外属性 )
在画图之前,你应该对那些原件可以干嘛有个大概印象,比如 Kline 是画 K 线图,Heatmap 是画热力图,WordCloud 是图词云图等等。对于那些装饰原件所需的必要属性和额外属性,上官网一查便知,跟着例子看理解更快。
画多个坐标系用 Grid 对象;叠加多个原件用 Overlap 对象;随着时间轴展示不同时点的数据关系用 Timeline 对象,等等。
首先用 pip 安装 pyecharts
pip install pyecharts
引入 pyecharts 并打印出它的版本
import pyecharts as pyeprint('pyecharts: %s' % pye.__version__)
pyecharts: 1
本文首先对比 pyecharts v0.5 和 v1.0 的区别,之后举三个从简单到复杂的例子来学习 v1.0 的用法。
1v0.5 Vs v1.0引入基本元件在 v0.5 中,引入 Line (线)、Kline (K 线)、Bar (柱状图)、Pie (饼状图)、Grid (多坐标系)、Overlap (叠加对象)、Timeline (时间轴轮播图)、TreeMap (树状图) 和 WordCloud (词云图) 的代码如下:
from pyechartsimport Line, Kline, Pie, Grid, Overlap, Timeline, TreeMap, WordCloud
在 v1.0 中,引入它们(除了 Overlap)的代码如下:
from pyecharts.charts import Line, Kline, Pie, Grid, Timeline, TreeMap, WordCloud
在 v1.0 中,我们从 pyecharts.charts 中引入元件,而不是从 pyecharts 引入。此外,v1.0 已经没有用于组合元件的 Overlap 了,它有一种更简单的组合方法。对于两个元件,K 线 kline 和线 line,v0.5 和 v1.0 的代码如下:
v0.5:需要先创建一个 Overlap 对象,再把 kline 和 line 一个个添加进去。
overlap = Overlap()
overlap.add(kline)
overlap.add(line)
v1.0:每个元件都有 overlap() 函数,可以另外元件,比如先创建 kline 再添加 line.
kline.overlap(line)
一切皆配置在 pyecharts v1.0 中,一切皆配置(options)。配置项有两种:全局配置项和系列配置项。
全局配置项有以下 16 小项:
系列配置项有以下 14 小项:
配置项越细就能画出更多细节。在后面几节我们会重点说明,尤其是全局配置项,它可通过 set_global_options 方法来设置。
引入 pyecharts 里的 options 代码如下: