Dodawanie adnotacji

Wprowadzenie do wizualizacji danych z Plotly w Pythonie

Alex Scriven

Data Scientist

Czym są adnotacje?

  • Dodatkowe pola tekstowe i dane umieszczane na wykresie

$$

  1. Zwracanie uwagi na konkretny punkt danych
  2. Dodawanie dodatkowych notatek do wykresu

Adnotacja powiązana z danymi

Wprowadzenie do wizualizacji danych z Plotly w Pythonie

Tworzenie adnotacji

$$

  • Za pomocą add_annotation()
    • Dodaje pojedynczą adnotację

$$

  • Za pomocą update_layout() i argumentu annotations
    • Przyjmuje listę obiektów adnotacji
Wprowadzenie do wizualizacji danych z Plotly w Pythonie

Ważne argumenty adnotacji

  • text - wyświetlany tekst
    • Może zawierać zmienne

$$

  • x i y: określają położenie adnotacji

$$

  • showarrow = True/False - wyświetla strzałkę
    • Strzałkę można dostosować

$$

🛑 Uwaga przy bezwzględnym pozycjonowaniu — po zmianie danych elementy mogą się nakładać

Wprowadzenie do wizualizacji danych z Plotly w Pythonie

Pozycjonowanie adnotacji

 

  • Domyślnie x i y odnoszą się do wartości danych na wykresie

$$

  • Ustawienie xref i yref na paper pozycjonuje adnotacje bezwzględnie
    • Wtedy x i y to wartości procentowe od 0 do 1 w obszarze wykresu
    • (x=0.5, y=0.5) oznacza środek wykresu
Wprowadzenie do wizualizacji danych z Plotly w Pythonie

Adnotacje powiązane z danymi

 

  • Wyróżnienie firmy na wykresie punktowym
my_annotation = dict(
    x=215111, y=449000,

showarrow=True, arrowhead=3,
text="Our company is doing well", font=dict(size=10, color="black") )
fig.update_layout(annotations=[my_annotation]) fig.show()

 

$$

Adnotacja powiązana z danymi

Wprowadzenie do wizualizacji danych z Plotly w Pythonie

Adnotacja pływająca

$$

float_annotation = dict(
    xref="paper", yref="paper",

x=0.5, y=0.8,
showarrow=False, text="You should <b>BUY</b>", font=dict(size=15, color="black"), bgcolor="rgb(255,0,0)" )

 

Adnotacja pływająca

Wprowadzenie do wizualizacji danych z Plotly w Pythonie

Czas na ćwiczenia!

Wprowadzenie do wizualizacji danych z Plotly w Pythonie

Preparing Video For Download...