Слайдеры

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

Alex Scriven

Data Scientist

Что такое слайдеры?

 

  • Интерактивный элемент для переключения между значениями и обновления графика

  • Используется для просмотра данных во времени

  • Подходит для любой группы

$$

$$

$$

  • 💡 Убедитесь, что слайдер уместен в вашем графике

 

Слайдер по годам:

Слайдер по годам

Слайдер по островам пингвинов:

Слайдер по островам пингвинов

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

Слайдеры в plotly.express

 

  • animation_frame — что будет на слайдере (Year или Island на предыдущем слайде)

$$

  • animation_group — определяет, какие точки данных остаются неизменными между кадрами
Введение в визуализацию данных с Plotly на Python

Выручка и сотрудники со слайдером

fig = px.scatter(
  data_frame=revenues, 
  y='Revenue',
  x='Employees',
  color='Industry',

animation_frame='Year', animation_group='Company')
fig.update_layout({ 'yaxis': {'range': [0, 500000]}, 'xaxis': {'range': [-100000, 2500000]} })
fig['layout'].pop('updatemenus') fig.show()

 

Выручка по годам

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

Ограничение: метод animate

plotly.express реализует слайдеры с помощью метода animate

$$

fig['layout']['sliders'][0].steps[0]['method']
animate

$$

  • Анимирует только одну и ту же точку данных во времени
  • Слайдер строится на основе трасс
Введение в визуализацию данных с Plotly на Python

Наш план

 

  1. Создайте объект фигуры с необходимыми трассами
  2. Определите объект слайдера для отображения/скрытия трасс
  3. Обновите макет, чтобы добавить слайдер к фигуре
Введение в визуализацию данных с Plotly на Python

Создание фигуры

 

fig = go.Figure()

for island in ['Torgersen', 'Biscoe', 'Dream']: df = penguins[penguins.Island == island]
temp_trace = px.scatter(df, x="Culmen Length (mm)", y="Culmen Depth (mm)") fig.add_trace(temp_trace.data[0])
Введение в визуализацию данных с Plotly на Python

Создание слайдера

sliders = [
  {'steps':[

{'method': 'update', 'label': 'Torgersen',
'args': [{'visible': [True, False, False]}]},
{'method': 'update', 'label': 'Bisco',
'args': [{'visible': [False, True, False]}]},
{'method': 'update', 'label': 'Dream',
'args': [{'visible': [False, False, True]}]}
]} ]

$$

Дополнительные параметры форматирования доступны в документации

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

Добавление слайдера

 

$$

fig.update_layout({'sliders': sliders})
fig.show()

Итоговый слайдер по островам пингвинов

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

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

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

Preparing Video For Download...