阅读(458) (0)

pyecharts 数据格式

2022-10-24 09:38:48 更新

Python -> JSON

pyecharts 本质上在做的事情就是将 Echarts 的配置项由 Python dict 序列化为 JSON 格式,所以 pyecharts 支持什么格式的数据类型取决于 JSON 支持什么数据类型。

在 Python 中对 JSON 的格式转换如下

Python          JSON
------          ----
int, float      number
str             string
bool            boolean
dict            object
list            array

这也就意味着在你将数据传入到 pyecharts 的时候,需要自行将数据格式转换成上述 Python 原生的数据格式。使用数据分析大都需要使用 numpy/pandas,但是 numpy 的 numpy.int64/numpy.int32/... 等数据类型并不继承自 ​Python.int​。

Q1: 如何转换?

# for int
[int(x) for x in your_numpy_array_or_something_else]
# for float
[float(x) for x in your_numpy_array_or_something_else]
# for str
[str(x) for x in your_numpy_array_or_something_else]

Q2: 有没有更方便的转换方法?

Series.tolist()

Q3: pyecharts 没有自动转换的原因?

pyecharts 是一个通用的第三方库,我们不可能关心开发者的所有使用场景,这个转换需要我们引入 ​numpy/pandas​ 两个第三方库,而这两个库 太重了,所以我们将这个工作交给了开发者。