Adnotacje ze strzałką
Wyobraź sobie, że jesteś planistą miejskim w Long Beach w Kalifornii. Miasto leży nad Oceanem Spokojnym i co roku w sylwestra organizuje wielki pokaz fajerwerków. Chcesz sprawdzić, czy ten pokaz negatywnie wpływa na jakość powietrza w mieście. W tym celu przeanalizujesz poziomy CO i NO2 w Nowy Rok. Okazuje się jednak, że Nowy Rok nie należy do wartości odstających widocznych na wykresie po prawej – punkt ten znajduje się w bardziej zatłoczonym obszarze.
Aby naprowadzić czytelnika na ten punkt, użyjesz adnotacji ze strzałką wskazującą na wartość z Nowego Roku. Dzięki temu tekst adnotacji pojawi się w mniej zatłoczonym miejscu wykresu, a strzałka wyraźnie wskaże interesujący punkt.
To ćwiczenie jest częścią kursu
Ulepszanie wizualizacji danych w Pythonie
Instrukcje do ćwiczenia
- Za pomocą metody
.query()z biblioteki pandas pobierz zjan_pollutionwiersz odpowiadający Nowemu Rokowi 2012 w Long Beach. - Ustaw punkt końcowy strzałki (
xy), korzystając z wartości kolumnCOiNO2z ramki danychlb_newyears. - Za pomocą argumentu
xytextumieść tekst adnotacji w lewym dolnym rogu wykresu: x =2, y =15. - Zmniejsz strzałkę (
'shrink') do wartości0.03, żeby nie zasłaniała interesującego punktu.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Query and filter to New Years in Long Beach
jan_pollution = pollution.query("(month == 1) & (year == 2012)")
lb_newyears = jan_pollution.query("(____ == ____) & (____ == '____')")
sns.scatterplot(x = 'CO', y = 'NO2',
data = jan_pollution)
# Point arrow to lb_newyears & place text in lower left
plt.annotate('Long Beach New Years',
xy = (____, ____),
xytext = (____, _____),
# Shrink the arrow to avoid occlusion
arrowprops = {'facecolor':'gray', 'width': 3, '____': ____},
backgroundcolor = 'white')
plt.show()