Основы Plotly Express
Быстро создавайте диаграммы
«Основы Plotly Express» — бесплатный урок Python Academy на CoddyKit. Это урок 1 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Python Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Python Academy содержит 4 уроков всего.
Что такое Plotly Express
Plotly Express (импортируемый как px) — это высокоуровневый интерфейс для создания интерактивных диаграмм с помощью очень небольшого объёма кода. Один вызов функции обычно создаёт полностью оформленный рисунок.
По умолчанию Matplotlib создаёт статичные графики, а рисунки Plotly интерактивны: в браузере можно наводить указатель, изменять масштаб и перемещать область просмотра.
Идея аккуратных данных
Plotly Express лучше всего работает с аккуратными данными: каждая строка представляет одно наблюдение, а каждый столбец — одну переменную. Затем вы указываете имена столбцов, чтобы сопоставить их с элементами диаграммы.
Структурированный набор данных можно представить как список словарей.
rows = [
{'country': 'A', 'year': 2020, 'gdp': 100},
{'country': 'A', 'year': 2021, 'gdp': 110},
{'country': 'B', 'year': 2020, 'gdp': 80},
]
for r in rows:
print(r['country'], r['year'], r['gdp'])Ваша первая диаграмма
Линейная диаграмма строится одним вызовом: px.line(df, x='year', y='gdp', color='country'). Аргумент color автоматически разделяет данные на отдельную линию для каждой страны и создаёт легенду.
Вручную перебирать ряды данных не требуется.
Основные функции Express
Для каждого типа диаграммы предусмотрена отдельная функция:
px.line— тенденцииpx.bar— сравнение категорийpx.scatter— взаимосвязиpx.histogram— распределенияpx.pie— части целого
Все они используют один и тот же подход с сопоставлением столбцов.
Сопоставление столбцов с элементами визуализации
Сила Express — в сопоставлении столбцов с визуальными каналами: x, y, color, size, symbol и facet_col. Каждый аргумент принимает имя столбца.
Главное решение при создании диаграммы — определить, какой столбец куда сопоставить.
encodings = {'x': 'year', 'y': 'gdp', 'color': 'country', 'size': 'population'}
for channel, column in encodings.items():
print(channel.ljust(6), '<-', column)Диаграмма рассеяния с цветом и размером
Один вызов функции для диаграммы рассеяния может отображать четыре переменные: px.scatter(df, x='gdp', y='life', color='continent', size='population'). Так в одну строку строится знаменитая пузырьковая диаграмма Gapminder.
Express автоматически выбирает подходящие масштабы и создаёт легенду.
Разбиение на панели
Разбиение на панели делит одну диаграмму на сетку небольших копий по категориальному признаку с помощью facet_col='region' или facet_row. Все панели используют общие масштабы, поэтому их легко сравнивать.
Количество панелей равно числу уникальных значений категории.
regions = ['North', 'South', 'East', 'West']
print('facet_col=region produces', len(regions), 'panels')
for r in regions:
print(' panel:', r)Встроенные демонстрационные данные
Plotly поставляет наборы данных для практики через px.data, например px.data.iris() и px.data.gapminder(). Они возвращают готовые к построению данные в удобном табличном виде, поэтому можно экспериментировать без поиска файлов.
Объект диаграммы
Каждый вызов Express возвращает объект диаграммы. Его можно отобразить с помощью fig.show(), настроить с помощью fig.update_layout(...) или сохранить. Express создаёт отличную исходную диаграмму, которую при этом можно дополнительно доработать.
Express и объекты графа
Внутри Express создаёт объекты графа (plotly.graph_objects). Используйте Express для быстрой работы, а переходите к объектам графа, когда нужен детальный контроль, которого Express не предоставляет. Оба подхода создают одинаковый интерактивный результат.
Заголовки и подписи в Express
Express принимает аргумент title и словарь labels, который переименовывает столбцы при отображении, например labels={'gdp': 'GDP per capita'}. Можно задавать понятные имена, не изменяя исходные данные.
Так столбцы данных остаются краткими, а диаграмма — понятной.
Проверка знаний
Проверьте, насколько хорошо Вы поняли Plotly Express.
Итоги
Вы изучили основы Plotly Express:
- По одному вызову функции (
px.line,px.bar,px.scatter...) на диаграмму - Данные должны быть аккуратно организованы: одна строка на одно наблюдение
- Сопоставление столбцов с каналами:
x,y,color,size,facet_col - Каждый вызов возвращает интерактивный объект
Figure, который можно дополнительно настроить
Часто задаваемые вопросы
Урок «Основы Plotly Express» бесплатный?
Да — полный текст урока «Основы Plotly Express» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Python Academy, подпишись на CoddyKit PRO. Курс Python Academy содержит 4 уроков всего.
Чему я научусь в уроке «Основы Plotly Express»?
Быстро создавайте диаграммы Ты практикуешь Python Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.
Нужен ли мне опыт, чтобы начать Python Academy?
Предыдущий опыт не требуется. Python Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 4.
Сколько времени занимает урок «Основы Plotly Express»?
Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.
Можно ли писать и запускать код в этом уроке Python Academy?
Да. Каждый урок Python Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.
Все уроки этого курса
- Основы Plotly Express
- Интерактивные возможности
- Основы информационных панелей
- Экспорт и встраивание