Aan de slagGa gratis aan de slag

Automatiseer je visualisatie

Een van de grootste krachten van Matplotlib is dat je het kunt automatiseren zodat het zich aanpast aan de gegevens die het als input krijgt. Als je bijvoorbeeld gegevens ontvangt met een onbekend aantal categorieën, kun je toch een staafdiagram maken met een staaf voor elke categorie.

Dat ga je in deze oefening doen. Je visualiseert opnieuw gegevens over medaillewinnaars van de Olympische Zomerspelen van 2016, maar dit keer heb je een gegevensset met een onbekend aantal sportdisciplines. Deze wordt in het geheugen geladen als een pandas-DataFrame met de naam summer_2016_medals, met een kolom "Sport" die aangeeft bij welke sportdiscipline elke rij hoort. Er is ook een kolom "Weight" die het gewicht van elke atleet aangeeft.

Deze oefening maakt deel uit van de cursus

Introductie tot datavisualisatie met Matplotlib

Cursus bekijken

Oefeninstructies

  • Itereer over de waarden van sports en gebruik sport als je lusvariabele.
  • Haal in elke iteratie de rijen op waarin de kolom "Sport" gelijk is aan sport.
  • Voeg een staaf toe aan het meegeleverde ax-object, gelabeld met de sportnaam, met het gemiddelde van de kolom "Weight" als hoogte en de standaarddeviatie als foutbalk op de y-as.
  • Sla de figuur op in het bestand "sports_weights.png".

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

fig, ax = plt.subplots()

# Loop over the different sports branches
for ____ in ____:
  # Extract the rows only for this sport
  sport_df = ____
  # Add a bar for the "Weight" mean with std y error bar
  ____

ax.set_ylabel("Weight")
ax.set_xticklabels(sports, rotation=90)

# Save the figure to file
____
Code bewerken en uitvoeren