pyecharts:基于 Apache ECharts 的 Python 数据可视化项目

🎨 Python Echarts Plotting Library

分支10Tags54
文件最后提交记录最后更新时间
6 个月前
7 年前
6 个月前
2 年前
6 个月前
2 年前
7 年前
7 年前
6 个月前
6 年前
7 年前
6 个月前
10 个月前
10 个月前
7 年前
6 个月前
2 年前
3 年前
10 个月前
2 年前
6 个月前

pyecharts logo

pyecharts

Python ❤️ ECharts = pyecharts

Github Actions 状态 Codecov 包版本 PyPI - Python 版本

PyPI - 格式 欢迎贡献 许可证

英文 README

📣 简介

Apache ECharts 是一个由百度开源的数据可视化库,凭借着良好的交互性和精巧的图表设计,得到了众多开发者的认可。而 Python 是一门富有表达力的语言,非常适合用于数据处理。当数据分析遇上数据可视化时,pyecharts 便应运而生。

✨ 特性

  • 简洁的 API 设计,使用体验如丝滑般流畅,支持链式调用
  • 囊括 30 多种常见图表,满足多样化需求
  • 支持主流 Notebook 环境,包括 Jupyter Notebook、JupyterLab 和 marimo
  • 可轻松集成至 Flask、Sanic、Django 等主流 Web 框架
  • 高度灵活的配置项,能够轻松搭配出精美的图表效果
  • 提供详细的文档和示例,帮助开发者快速上手项目
  • 内置多达 400 多个地图文件,并支持原生百度地图,为地理数据可视化提供强有力的支持

⏳ 版本

v0.5.x 与 V1 版本不兼容,V1 是一个全新的版本,详情参见 ISSUE#892ISSUE#1033

V0.5.x

支持 Python 2.7、3.4+

经开发团队决议,0.5.x 版本将停止维护,其代码存放于 05x 分支,文档可访问 05x-docs.pyecharts.org

V1

仅支持 Python 3.7+

新版本系列将自 v1.0.0 起发布,文档地址为 pyecharts.org;示例可查看 gallery.pyecharts.org

V2

仅支持 Python 3.7+

该版本基于 Echarts 5.4.1+ 进行渲染,文档与示例的访问位置和 V1 版本一致。

🔰 安装

pip 安装

# 安装 v1 以上版本
$ pip install pyecharts -U

# 如果需要安装 0.5.11 版本的开发者,可以使用
# pip install pyecharts==0.5.11

源码安装

# 安装 v1 以上版本
$ git clone https://github.com/pyecharts/pyecharts.git
# 如果需要安装 0.5.11 版本,请使用 git clone https://github.com/pyecharts/pyecharts.git -b v05x
$ cd pyecharts
$ pip install -r requirements.txt
$ python setup.py install

📝 使用

本地环境

生成 HTML

from pyecharts.charts import Bar
from pyecharts import options as opts

# V1 版本开始支持链式调用
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()

# 不习惯链式调用的开发者依旧可以单独调用方法
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()

生成图片

from snapshot_selenium import snapshot as driver

from pyecharts import options as opts
from pyecharts.charts import Bar
from pyecharts.render import make_snapshot


def bar_chart() -> Bar:
    c = (
        Bar()
        .add_xaxis(["衬衫", "毛衣", "领带", "裤子", "风衣", "高跟鞋", "袜子"])
        .add_yaxis("商家A", [114, 55, 27, 101, 125, 27, 105])
        .add_yaxis("商家B", [57, 134, 137, 129, 145, 60, 49])
        .reversal_axis()
        .set_series_opts(label_opts=opts.LabelOpts(position="right"))
        .set_global_opts(title_opts=opts.TitleOpts(title="Bar-测试渲染图片"))
    )
    return c

# 需要安装 snapshot-selenium 或者 snapshot-phantomjs
make_snapshot(driver, bar_chart().render(), "bar.png")

Notebook 环境

Jupyter Notebook

JupyterLab

Web 框架

🔖 演示示例

演示代码位于 example 文件夹下,欢迎参考 pyecharts 画廊 pyecharts-gallery

bar boxplot effectScatter funnel gague geo geo graph heatmap kline line liquid map bmap parallel pie ploar radar scatter tree treemap wordCloud bar3D line3D sankey scatter3D surface3D themeRiver sunburst overlap grid grid timeline

更多详细文档,请访问

⛏ 代码质量

单元测试

$ pip install -r test/requirements.txt
$ make

集成测试

使用 Travis CIAppVeyor 持续集成环境。

代码规范

使用 flake8Codecov 以及 pylint 提升代码质量。

😉 作者

pyecharts 主要由以下几位开发者开发维护

更多贡献者信息可以访问 pyecharts/graphs/contributors

💡 贡献

期待能有更多的开发者参与到 pyecharts 的开发中来,我们会保证尽快 Review PR 并且及时回复。但提交 PR 请确保

  1. 通过所有单元测试,如若是新功能,请为其新增单元测试
  2. 遵守开发规范,使用 black 以及 isort 格式化代码($ pip install -r requirements-dev.txt)
  3. 如若需要,请更新相对应的文档

我们也非常欢迎开发者能为 pyecharts 提供更多的示例,共同来完善文档,文档项目位于 pyecharts/website

📃 许可证

MIT ©chenjiandongx

项目介绍

🎨 Python Echarts 绘图库【此简介由AI生成】

定制我的领域
37515.77 K2.85 K访问 GitHub