Подграфики

Введение в визуализацию данных с Plotly на Python

Alex Scriven

Data Scientist

Что такое подграфики?

 

  • Подграфики: «мини-графики» в сетке

$$

  • Отображают разные типы графиков (одни данные) или разные подмножества данных

 

Структура подграфиков

Введение в визуализацию данных с Plotly на Python

Напоминание о трассах

 

  • Фигуры Plotly содержат список traces — данные и тип

  • Доступ через fig.data[0], fig.data[1]

    • Добавление в подграфики с помощью .add_trace()

$$

px_fig = px.scatter(df...)
print(px_fig)
Figure({'data': [trace1], 'layout': {...}})
Введение в визуализацию данных с Plotly на Python

Создание подграфика 1×2

import plotly.express as px
from plotly.subplots import make_subplots

# Create a subplot grid
fig = make_subplots(rows=2, cols=1)

# Create plotly express figures hist = px.histogram(revenues, x='Revenue') box = px.box(revenues, x='Revenue')
# Extract traces and add to subplots fig.add_trace(hist.data[0], row=1, col=1) fig.add_trace(box.data[0], row=2, col=1) fig.show()

 

Финансовый подграфик

Введение в визуализацию данных с Plotly на Python

Настройка подграфиков

 

  • Нет общего заголовка графика
  • Нет заголовков подграфиков

$$

$$

$$

  • ✨ Сделаем вид презентационным

 

Простой финансовый подграфик

Введение в визуализацию данных с Plotly на Python

Заголовки подграфиков

from plotly.subplots import make_subplots

fig = make_subplots(rows=2, cols=1,
    subplot_titles=[
    'Histogram of company revenues', 
    'Box plot of company revenues'])

## Add in traces (fig.add_trace())
fig.update_layout({'title': {'text': 'Plots of company revenues', 'x': 0.5, 'y': 0.9}}) fig.show()

Заголовки подграфиков добавлены

Больше параметров — в документации

Введение в визуализацию данных с Plotly на Python

Сложенные подграфики

$$

fig = make_subplots(rows=3, cols=1, 
  subplot_titles=['Adelie Penguins'
  , 'Gentoo Penguins', 'Chinstrap Penguins'])

row_num = 1 for species in ['Adelie', 'Gentoo', 'Chinstrap']: # Filter data for this species df = penguins[penguins['Species'] == species]
scatter = px.scatter(df, x='Culmen Length (mm)' , y='Culmen Depth (mm)') # Add the trace to the subplot fig.add_trace(scatter.data[0] , row=row_num, col=1) row_num +=1

Сложенные подграфики с пингвинами

Введение в визуализацию данных с Plotly на Python

Подграфики с общими осями

 

  • Общая ось X:
fig = make_subplots(
    rows=3, cols=1
    , shared_xaxes=True)

Подграфики с пингвинами и общей осью X

Введение в визуализацию данных с Plotly на Python

Давайте потренируемся!

Введение в визуализацию данных с Plotly на Python

Preparing Video For Download...