Pijlaanmerkingen
Stel je bent stadsplanner voor Long Beach, Californië. Long Beach ligt aan de Grote Oceaan en heeft elk oud en nieuw een grote vuurwerkshow. Je wilt onderzoeken of deze show de luchtkwaliteit van de stad negatief beïnvloedt. Daarvoor kijk je naar CO- en NO2-niveaus op New Year's Day. Het blijkt echter dat New Year's Day niet een van de uitschieters is in de plot rechts; het punt ligt in een van de drukkere gebieden.
Om de lezer hier naartoe te leiden, gebruik je een annotatie met een pijl die naar de waarde op New Year's Day wijst. Zo geef je een duidelijke toelichting op wat de kijker ziet, terwijl de tekst in een minder druk gedeelte van de plot wordt geplaatst.
Deze oefening maakt deel uit van de cursus
Je datavisualisaties verbeteren in Python
Oefeninstructies
- Haal met de
.query()-methode van pandas de rij uitjan_pollutiondie overeenkomt met New Year's Day 2012 in de stad Long Beach. - Stel het eindpunt van de pijl (
xy) in met de waarden uit de kolommenCOenNO2van de DataFramelb_newyears. - Gebruik het argument
xytextom de tekst van de annotatiepijl linksonder in de weergave te plaatsen op x =2, y =15. - 'shrink' de pijl naar
0.03, zodat het punt van interesse niet wordt afgedekt.
Praktische interactieve oefening
Probeer deze oefening eens door deze voorbeeldcode in te vullen.
# 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()