Модуль Python pyecharts
pyecharts — это библиотека визуализации данных Python на основе ECharts. Она позволяет пользователям использовать язык Python для создания различных типов интерактивных диаграмм и визуализаций данных.
ECharts — это библиотека визуализации с открытым исходным кодом, реализованная на JavaScript, а Pyecharts — это обёртка Python для ECharts, что делает использование ECharts в Python более удобным.
pyecharts предоставляет набор простых и гибких API, позволяя пользователям легко создавать различные диаграммы, включая, помимо прочего, линейные диаграммы, столбчатые диаграммы, диаграммы рассеяния, круговые диаграммы, карты и многое другое.
С помощью pyecharts пользователи могут использовать Python для обработки и подготовки данных, а затем с помощью лаконичного кода генерировать интерактивные диаграммы. Эти диаграммы можно встраивать в веб-приложения или сохранять в виде статических файлов.
Возможности и функции pyecharts:
Простота и удобство использования:Pyecharts предоставляет интуитивно понятный и удобный API, позволяя пользователям быстро начать работу и легко создавать различные диаграммы.
Богатый выбор типов диаграмм:Поддерживает множество распространенных типов диаграмм, включая линейные графики, столбчатые диаграммы, точечные диаграммы, круговые диаграммы, карты и т. д., чтобы удовлетворить потребности различных сценариев.
Поддерживает основные форматы данных:Может работать с распространенными форматами данных, такими как списки, словари, Pandas DataFrames и другими.
Интерактивность:Созданные диаграммы могут быть интерактивными. Пользователи могут взаимодействовать с диаграммами, наводя курсор мыши, масштабируя и т. д.
Богатые возможности настройки:Предоставляет богатый набор параметров конфигурации, позволяя пользователям настраивать стиль диаграмм, макет и другие атрибуты.
Поддержка тем:Предоставляет несколько тем. Пользователи могут выбрать подходящую тему в соответствии со своими потребностями, чтобы диаграммы лучше соответствовали общему стилю приложения.
Установка pyecharts
Установка через pip:
pip install pyecharts
Установка из исходного кода:
$ git clone https://github.com/pyecharts/pyecharts.git $ cd pyecharts $ pip install -r requirements.txt $ python setup.py install # 或者执行 python install.py
После успешной установки вы можете проверить версию pyecharts:
import pyecharts print(pyecharts.__version__)
Вывод следующий:
2.0.4
Типы диаграмм pyecharts
pyecharts поддерживает следующие типы диаграмм:
| Тип диаграммы | Класс pyecharts | Импорт пакета |
|---|---|---|
| Линейный график | Line | from pyecharts.charts import Line |
| Столбчатая диаграмма | Bar | from pyecharts.charts import Bar |
| Точечная диаграмма | Scatter | from pyecharts.charts import Scatter |
| Круговая диаграмма | Pie | from pyecharts.charts import Pie |
| Лепестковая диаграмма | Radar | from pyecharts.charts import Radar |
| Тепловая карта | HeatMap | from pyecharts.charts import HeatMap |
| Диаграмма K-линий | Kline | from pyecharts.charts import Kline |
| Ящичная диаграмма | Boxplot | from pyecharts.charts import Boxplot |
| Map | Map | from pyecharts.charts import Map |
| Облако слов | WordCloud | from pyecharts.charts import WordCloud |
| Спидометр | Gauge | from pyecharts.charts import Gauge |
| Воронкообразная диаграмма | Funnel | from pyecharts.charts import Funnel |
| Древовидная диаграмма | Tree | from pyecharts.charts import Tree |
| Диаграмма параллельных координат | Parallel | from pyecharts.charts import Parallel |
| Диаграмма Санкей | Sankey | from pyecharts.charts import Sankey |
| Диаграмма географической системы координат | Geo | from pyecharts.charts import Geo |
| Диаграмма временной шкалы | Timeline | from pyecharts.charts import Timeline |
| 3D-диаграмма рассеяния | Scatter3D | from pyecharts.charts import Scatter3D |
| 3D-столбчатая диаграмма | Bar3D | from pyecharts.charts import Bar3D |
| 3D-диаграмма поверхности | Surface3D | from pyecharts.charts import Surface3D |
Создание первой диаграммы
Далее мы используем Pyecharts, чтобы создать простую столбчатую диаграмму, показывающую продажи за пять месяцев:
Пример
# Подготовьте данные
x_data = ['Январь', 'Февраль', 'Март', 'Апрель', 'Май']
y_data = [10, 20, 15, 25, 30]
# Создание столбчатой диаграммы
bar_chart = Bar()
bar_chart.add_xaxis(x_data)
bar_chart.add_yaxis("Sales", y_data)
# Также можно передать параметр пути, например bar_chart.render("bar_chart.html")
bar_chart.render()
Если вbar_chart.render()не указан путь к файлу, Pyecharts по умолчанию создаст файл с именем "render.html" в текущем рабочем каталоге, т.е. созданная диаграмма будет сохранена в файле "render.html".
Результат выполнения приведённого выше кода:

Если вы хотите, чтобы имя файла диаграммы соответствовало определённому соглашению об именовании, или хотите указать путь сохранения, вы можете передать параметр пути к файлу в метод render(). Например:
bar_chart.render("my_bar_chart.html")
Таким образом, созданная диаграмма будет сохранена в файле "my_bar_chart.html" в текущем рабочем каталоге.
Настройте параметры конфигурации диаграммы
В примере заголовок диаграммы — "Столбчатая диаграмма месячных продаж", по оси X отложены месяцы, а по оси Y — продажи. Вы можете настроить данные и конфигурацию диаграммы в соответствии с фактическими потребностями:
Пример
from pyecharts.charts import Bar
# Подготовьте данные
x_data = ['Январь', 'Февраль', 'Март', 'Апрель', 'Май']
y_data = [10, 20, 15, 25, 30]
# Создание столбчатой диаграммы
bar_chart = Bar()
bar_chart.add_xaxis(x_data)
bar_chart.add_yaxis("Sales", y_data)
# Настройте диаграмму
bar_chart.set_global_opts(
title_opts=opts.TitleOpts(title="Ежемесячная столбчатая диаграмма продаж"),
xaxis_opts=opts.AxisOpts(name="Месяц"),
yaxis_opts=opts.AxisOpts(name="Продажи (10,000 yuan)"),
)
# Отрисовать график
bar_chart.render("bar_chart.html")
Пояснение:
Bar(): Создать объект столбчатой диаграммы.add_xaxisиadd_yaxis: Используется для добавления данных на ось X и ось Y соответственно.set_global_opts: Настройка глобальных параметров, включая заголовок, названия осей и т. д.
Созданная диаграмма будет сохранена в файл "bar_chart.html". Вы можете открыть этот файл в браузере, чтобы просмотреть созданную столбчатую диаграмму.

Использование тем
pyecharts поддерживает переключение тем. Пользователи могут выбрать подходящую тему в соответствии со своими потребностями, чтобы изменить стиль диаграмм.
pyecharts предоставляет 10+ встроенных тем, а разработчики также могут настраивать свои любимые темы.
Ниже приведён простой пример, демонстрирующий, как переключать темы в pyecharts:
Пример
from pyecharts.charts import Bar
# Встроенные типы тем можно найти в pyecharts.globals.ThemeType
from pyecharts.globals import ThemeType
# Подготовьте данные
x_data = ['Январь', 'Февраль', 'Март', 'Апрель', 'Май']
y_data = [10, 20, 15, 25, 30]
# Создание столбчатой диаграммы
bar_chart = Bar(init_opts=opts.InitOpts(theme=ThemeType.LIGHT)) # Начальная тема — светлая
bar_chart.add_xaxis(x_data)
bar_chart.add_yaxis("Sales", y_data)
# Настройте диаграмму
bar_chart.set_global_opts(
title_opts=opts.TitleOpts(title="Ежемесячная столбчатая диаграмма продаж"),
xaxis_opts=opts.AxisOpts(name="Месяц"),
yaxis_opts=opts.AxisOpts(name="Продажи (10,000 yuan)"),
)
# Переключиться на тёмную тему
bar_chart.set_global_opts(theme=ThemeType.DARK)
# Отрисовать график
bar_chart.render("themed_bar_chart.html")
Приведённый выше пример демонстрирует, как использовать в pyechartsThemeTypeдля переключения тем. Типы тем, поддерживаемые pyecharts, включаютLIGHT(светлая тема),DARK(тёмная тема), и т. д. Вы можете выбрать подходящую тему в соответствии с вашими потребностями.
init_opts=opts.InitOpts(theme=ThemeType.LIGHT): При создании объекта диаграммы передайтеinit_optsпараметр для указания начальной темы диаграммы. Здесь задана светлая тема.
Сгенерированная диаграмма выглядит так:

Ниже приведён список тем, поддерживаемых pyecharts:
Светлые темы (светлые цветовые схемы):
"LIGHT": Светлая тема по умолчанию"WESTEROS": Классическая тёплая цветовая тема"CHALK": Тема в стиле Chalk"ESSOS": Нежная зелёная тема"INFOGRAPHIC": Тема Infographic"MACARONS": Восхитительная конфетная цветовая тема
Тёмные темы (тёмные цветовые схемы):
"DARK": Тёмная тема по умолчанию"PURPLE-PASSION": Тёмно-фиолетовая тема"SHINE": Простая чёрная тема"VINTAGE": Тема в ретро-стиле"ROMA": Тема в стиле Древнего Рима"WALDEN": Тёмная лесная тема
Пользователи могут создавать собственные темы, задавая собственные цвета и стили.
Установить глобальные параметры конфигурации
set_global_opts — это метод в pyecharts, используемый для установки глобальных параметров конфигурации. Этот метод позволяет настроить некоторые глобальные свойства всего графика, такие как заголовок, оси, легенда и т. д.
Ниже приведены некоторые часто используемые глобальные параметры конфигурации:
bar_chart.set_global_opts(
title_opts=opts.TitleOpts(title="月度销售额柱状图", subtitle="副标题"),
xaxis_opts=opts.AxisOpts(name="月份"),
yaxis_opts=opts.AxisOpts(name="销售额(万元)"),
legend_opts=opts.LegendOpts(pos_left="center", pos_top="top"),
toolbox_opts=opts.ToolboxOpts(),
tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross"),
)
Пояснение:
title_opts: Элемент конфигурации заголовка, позволяет задать основной заголовок и подзаголовок, а также связанные настройки стиля.xaxis_optsиyaxis_opts: Элементы конфигурации для оси x и оси y, позволяют задать имена осей, стили линий осей и т. д.legend_opts: Элемент конфигурации легенды, позволяет задать положение, стиль и т. д. легенды.toolbox_opts: Элемент конфигурации Toolbox, используется для добавления некоторых интерактивных инструментов, таких как сохранение в виде изображения, просмотр данных и т. д.tooltip_optsПараметры конфигурации Tooltip, можно настроить способ срабатывания, стиль и т. д. всплывающей подсказки.
Пример
from pyecharts.charts import Bar
# Подготовка данных
x_data = ['Январь', 'Февраль', 'Март', 'Апрель', 'Май']
y_data = [10, 20, 15, 25, 30]
# Создать столбчатую диаграмму
bar_chart = Bar()
bar_chart.add_xaxis(x_data)
bar_chart.add_yaxis("Сумма продаж", y_data)
# Настройка глобальных атрибутов
bar_chart.set_global_opts(
title_opts=opts.TitleOpts(title="Столбчатая диаграмма месячных продаж", subtitle="Подзаголовок"),
xaxis_opts=opts.AxisOpts(name="Месяц"),
yaxis_opts=opts.AxisOpts(name="Продажи (10,000 yuan)"),
legend_opts=opts.LegendOpts(pos_left="center", pos_top="top"),
toolbox_opts=opts.ToolboxOpts(),
tooltip_opts=opts.TooltipOpts(trigger="axis", axis_pointer_type="cross"),
)
# Отрисовать диаграмму
bar_chart.render("global_options_bar_chart.html")
Сгенерированная диаграмма выглядит так:

Другие расширенияДополнительные сведения о модуле pyecharts см. по ссылке:https://pyecharts.org/#/zh-cn/intro