사용자 지정 버튼

Python으로 배우는 Plotly 데이터 시각화 입문

Alex Scriven

Data Scientist

사용자 지정 버튼으로 가능한 작업

 

사용자 지정 버튼은 다음을 수행할 수 있습니다:

  • 그래프의 데이터 또는 레이아웃 요소 업데이트

    • 모든 update_layout() 설정을 버튼으로 묶을 수 있습니다!
  • 애니메이션 보조(이 강의 범위 밖)

Python으로 배우는 Plotly 데이터 시각화 입문

Plotly의 사용자 지정 버튼

updatemenus 인수로 추가하며, 주요 인수는 다음과 같습니다:

  • type: buttons 또는 dropdown
    • dropdown은 뒤에서 다룹니다.
  • direction: 버튼 배치 방향
    • 버튼은 나란히(left) 또는 위아래로(down) 배치 가능
  • x/y: 버튼 위치를 정하는 부동소수점 값
  • showactive: True/Falseactive(선택된 버튼 인덱스) 표시 여부 설정
    • active 버튼은 현재 선택된 버튼입니다.
  • buttons: button 객체의 리스트
Python으로 배우는 Plotly 데이터 시각화 입문

버튼으로 그래프 유형 전환

$$

fig = px.bar(
      data_frame=revenues, 
    x='Industry', y='Revenue',
    color='Industry')
fig.show()

산업별 단순 막대그래프

Python으로 배우는 Plotly 데이터 시각화 입문

버튼 설정

 

my_buttons = [

{'label': "Bar plot",
'method': "update",
'args': [{"type": "bar"}]},
{'label': "scatterplot",
'method': "update",
'args': [{"type": "scatter", 'mode': 'markers'}]}
]
Python으로 배우는 Plotly 데이터 시각화 입문

'args' 인수

Plotly에서 가장 헷갈리는 부분 중 하나!

  • 구조:

[{dictionary to send to data}, {dictionary to send to layout}]

도표 내부 구조

Python으로 배우는 Plotly 데이터 시각화 입문

args로 레이아웃 업데이트

dir(fig.layout)

Figure 레이아웃 요소

  • 'args'로 어떤 인수든 업데이트 가능
Python으로 배우는 Plotly 데이터 시각화 입문

args로 데이터 업데이트

dir(fig.data[0])

데이터 내부 레이아웃

  • 익숙한 것도 있고, 나중에 유용한 것도 있음
Python으로 배우는 Plotly 데이터 시각화 입문

버튼 상호작용

$$

fig.update_layout({
  'updatemenus': [{'type': "buttons",

'direction': 'down', 'x': 1.3, 'y': 0.5,
'showactive': True, 'active': 0,
'buttons': my_buttons}] }) fig.show()

$$

버튼

Python으로 배우는 Plotly 데이터 시각화 입문

연습해 봅시다!

Python으로 배우는 Plotly 데이터 시각화 입문

Preparing Video For Download...