pyecharts V0.6.0 发布日志

1. 不再支持 Python3.4

pyecharts v0.6.0 停止对 Python3.4 版本的支持和维护,目前 Python 版本的支持情况为:2.7 和 3.5+。推荐使用 Python3.5+。

2. pyecharts-javascripthon 合并入主仓库

javascripthon 封装了一个 Python-To-Javascript 语言翻译器,是 pyecharts 核心流程功能之一。基于此,将 pyecharts-javascripthon 合并入 主代码仓库,导入路径为 pyecharts.javascripthon

pyecharts v0.6.0 对 pyecharts.javascripthon.api 进行大量代码重构工作。

新的 api 模块具有几个特点:

3. 重构图表继承体系

v0.6.0 的图表继承体系更加清晰,主要更名包括:

4. 图表构建方法:命名规范与链式调用

图表方法用于设置图表的主题、数据、事件等。推荐按照下列的顺序构建图表对象:

步骤 描述 代码示例 备注
1 实例一个具体类型图表的对象 chart = FooChart()
2 为图表添加通用的配置,如主题 chart.use_theme()
3 为图表添加特定的配置 geo.add_coordinate()
4 添加数据及配置项 chart.add() 参考 数据解析与导入篇
5 生成本地文件(html/svg/jpeg/png/pdf/gif) chart.render()

以上方法均支持链式调用,例子:

from pyecharts import Bar

CLOTHES = ["衬衫", "羊毛衫", "雪纺衫", "裤子", "高跟鞋", "袜子"]
clothes_v1 = [5, 20, 36, 10, 75, 90]
clothes_v2 = [10, 25, 8, 60, 20, 80]

Bar("柱状图数据堆叠示例")
   .add("商家A", CLOTHES, clothes_v1, is_stack=True)
   .add("商家B", CLOTHES, clothes_v2, is_stack=True)
   .render()

5. ECharts 配置项支持 null 值

pyecharts 基于 json 实现了自己的 Python-Javascript 翻译器,对原生的 json 序列化行为进行了一些修改。比如对于两种“空值”的处理:

例子:

{"a": NULL}

将转化为

{"a": null}

6. 接口设计与规范

pyecharts.interfaces 定义了 pyecharts 的一些接口,这些接口可能来自于其他第三方库或者 pyecharts 自定义的一些协议和约定。功能的抽象和接口的应用使得代码拥有清晰的模块功能划分,以及可读性。

在 Python 语言中,没有严格的 implementation ,而是使用 装饰器Mixin 方式实现。