Aan de slagGa gratis aan de slag

Bandbreedtes opschonen bij overlap

Je werkt voor de stad Denver, Colorado en wilt een advertentiecampagne voeren over hoe veel schoner de lucht in Denver is dan die in Long Beach, Californië. Om deze claim te onderzoeken, vergelijk je de SO2-niveaus van beide steden voor het jaar 2014 (geleverd als de DataFrame SO2_compare). Omdat je alleen geïnteresseerd bent in hoe de steden zich tot elkaar verhouden, wil je de bandbreedtes in dezelfde plot houden. Om de bandbreedtes makkelijker te vergelijken, verlaag je de opaciteit van de betrouwbaarheidsbanden en stel je een duidelijke legenda in.

Deze oefening maakt deel uit van de cursus

Je datavisualisaties verbeteren in Python

Cursus bekijken

Oefeninstructies

  • Filter SO2_compare naar de city die momenteel in de for-lus is geselecteerd.
  • Geef zowel de intervallen als de gemiddelde lijnen de color die bij elke city hoort.
  • Verlaag de opaciteit van het interval en de gemiddelde lijn respectievelijk naar 0,4 en 0,25.
  • Overschrijf de standaardlegendalabels in plt.plot() door het argument label in te stellen op de stadsnaam.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

for city, color in [('Denver',"#66c2a5"), ('Long Beach', "#fc8d62")]:
    # Filter data to desired city
    city_data = SO2_compare[SO2_compare.____  ==  ____]

    # Set city interval color to desired and lower opacity
    plt.fill_between(x = 'day', y1 = 'lower', y2 = 'upper', data = city_data,
                     color = ____, alpha = ____)
    
    # Draw a faint mean line for reference and give a label for legend
    plt.plot('day','mean', data = city_data, ____ = city,
             color = ____, alpha = ____)

plt.legend()
plt.show()
Code bewerken en uitvoeren