pyecharts
Python options, make charting easier
What it is and what it does
pyecharts is a Python binding for Apache ECharts, a data visualization library originally developed by Baidu. It lets you build interactive charts and maps in Python and export them as standalone HTML files or images. The library supports chain-style method calls for fluent API design, making it natural to build visualizations incrementally. It includes over 30 common chart types (bar, line, scatter, pie, heatmap, and others) and extensive map support for geographic data.
The package integrates with Jupyter Notebook, JupyterLab, and marimo for inline visualization, and can be embedded into Flask, Sanic, Django, and other web frameworks. It depends on jinja2 for template rendering, prettytable for table formatting, and simplejson for JSON serialization. Version 2 is based on ECharts 5.4.1+ and requires Python 3.7 or later.
Use it for:
- Build interactive sales dashboards or business intelligence reports in Jupyter notebooks for exploratory data analysis
- Generate standalone HTML visualizations for embedding in web applications or sharing via email
- Create geographic heatmaps or choropleth maps using the 400+ map files for location-based data analysis
- Render time-series or multi-series charts with custom styling and configuration for presentations or reports
- Integrate real-time or batch-generated charts into Flask or Django web applications for live dashboards
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
pyecharts wraps Apache ECharts to generate interactive data visualizations from Python, rendering charts as HTML or images with support for 30+ chart types and 400+ map files.
Yes. pyecharts is actively maintained, has low install friction, carries no known vulnerabilities, and offers a permissive MIT license. It is well-suited for anyone needing interactive charts in Python, especially for Jupyter workflows or web integration. The large ecosystem of chart types and map support makes it a practical choice for data visualization across multiple contexts.
Install
pyecharts on PyPI
pip
pip install pyechartsuv
uv add pyechartspoetry
poetry add pyechartsInstalling pyecharts
Before you install
Low install friction with only three runtime dependencies (jinja2, prettytable, simplejson). Active maintenance with a recent release and 15775 repository stars; last commit on 2026-08-04.
License in practice
MIT license is permissive, allowing free use, modification, and distribution with minimal restrictions—suitable for both open-source and commercial projects.
Quickstart
pip install pyecharts
from pyecharts.charts import Bar
from pyecharts import options as opts
bar = (Bar()
.add_xaxis(["A", "B", "C"])
.add_yaxis("Series", [10, 20, 30])
.set_global_opts(title_opts=opts.TitleOpts(title="Sample"))
)
bar.render()
Verify before relying
- Whether the 400+ map files require separate download or are bundled with the package
- Performance characteristics when rendering large datasets or complex multi-series charts
- Specific integration patterns with Flask, Sanic, and Django beyond basic HTML rendering
Package facts
| License | MIT (permissive) |
| Python support | not specified |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — jinja2, prettytable, simplejson |
| Maintenance | actively maintained — 185 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,139,358/month — #4,310 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: pyecharts-2.1.0-py3-none-any.whl
Keywords: Echarts, charts, plotting-tool
Tags
More Libraries packages
urllib3 is an HTTP client library that provides…
permissive · top 100 on PyPI
requestsRequests is a Python HTTP library that…
permissive · top 100 on PyPI
pluggyPluggy provides a plugin system that lets you…
permissive · top 100 on PyPI
python-dateutilProvides parsing, arithmetic, and recurrence…
permissive · top 100 on PyPI
sixSix provides utility functions to write Python…
permissive · top 100 on PyPI
pytestpytest is a testing framework that lets you…
permissive · top 100 on PyPI
streamlit-echartsRenders interactive ECharts visualizations in…
permissive · top 15,000 on PyPI
plotlyPlotly is an interactive, browser-based…
permissive · top 1,000 on PyPI
reflex-components-rechartsProvides Recharts charting components for use…
permissive · top 15,000 on PyPI
highcharts-coreGenerates interactive Highcharts data…
unclear · top 15,000 on PyPI
reflex-components-plotlyProvides Plotly chart and graph components for…
permissive · top 15,000 on PyPI
highcharts-mapsHighcharts Maps for Python wraps the Highcharts…
unclear · top 15,000 on PyPI
chart-studioProvides utilities to interface with Plotly's…
permissive · top 15,000 on PyPI
leatherLeather is a lightweight Python charting…
permissive · top 1,000 on PyPI
jupyter-leafletjupyter-leaflet provides interactive map…
permissive · top 15,000 on PyPI