Nút tùy chỉnh

Nhập môn Trực quan hóa Dữ liệu với Plotly trong Python

Alex Scriven

Data Scientist

Nút tùy chỉnh làm được gì?

 

Nút tùy chỉnh có thể:

  • Cập nhật phần data hoặc layout của biểu đồ

    • Mọi tùy chỉnh update_layout() đều có thể đưa vào nút!
  • Hỗ trợ hoạt ảnh (ngoài phạm vi khóa học)

Nhập môn Trực quan hóa Dữ liệu với Plotly trong Python

Nút tùy chỉnh trong Plotly

Thêm qua đối số updatemenus với các tham số:

  • type: buttons hoặc dropdown
    • Dropdown sẽ học sau!
  • direction: Hướng sắp xếp nút
    • Nút có thể cạnh nhau (left) hoặc xếp dọc (down)
  • x/y: Số thực đặt vị trí nút
  • showactive: True/False để hiển thị active (chỉ số nút) là đang bấm hay không.
    • Nút active là nút đang được chọn.
  • buttons: Danh sách đối tượng button
Nhập môn Trực quan hóa Dữ liệu với Plotly trong Python

Kiểu biểu đồ với nút

$$

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

Biểu đồ cột đơn giản theo ngành

Nhập môn Trực quan hóa Dữ liệu với Plotly trong Python

Thiết lập nút

 

my_buttons = [

{'label': "Bar plot",
'method': "update",
'args': [{"type": "bar"}]},
{'label': "scatterplot",
'method': "update",
'args': [{"type": "scatter", 'mode': 'markers'}]}
]
Nhập môn Trực quan hóa Dữ liệu với Plotly trong Python

Đối số args

Một trong những phần gây rối nhất của Plotly!

  • Cấu trúc là:

[{dictionary gửi đến data}, {dictionary gửi đến layout}]

Cấu trúc bên trong Figure

Nhập môn Trực quan hóa Dữ liệu với Plotly trong Python

Dùng args để cập nhật layout

dir(fig.layout)

Thành phần layout của Figure

  • Cập nhật bất kỳ đối số nào với 'args'
Nhập môn Trực quan hóa Dữ liệu với Plotly trong Python

Dùng args để cập nhật data

dir(fig.data[0])

Bên trong data layout

  • Có phần quen thuộc, và một số sẽ hữu ích sau này
Nhập môn Trực quan hóa Dữ liệu với Plotly trong Python

Tương tác bằng nút

$$

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

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

$$

Các nút

Nhập môn Trực quan hóa Dữ liệu với Plotly trong Python

Hãy thực hành!

Nhập môn Trực quan hóa Dữ liệu với Plotly trong Python

Preparing Video For Download...