Aanpassing van Assen
Aanpassen van Ticks
Om ticks op een grafiek aan te passen, gebruikt u de functies van de pyplot
-module:
xticks
voor het aanpassen van de x-as;yticks
voor het aanpassen van de y-as.
Beide functies volgen dezelfde syntaxis en hebben twee belangrijke parameters:
ticks
bepaalt de posities waar de ticks moeten verschijnen. U kunt elke array-achtige structuur gebruiken. Om ticks volledig te verwijderen, geeft u een lege lijst door;labels
wijst aangepaste tekst toe aan elke tickpositie. Dit moet samen met de parameterticks
worden gebruikt.
U kunt ook extra sleutelwoordargumenten toevoegen om de labels te stylen en hun uiterlijk te regelen.
Hieronder staat een van de recent gemaakte grafieken:
Alles lijkt vrij goed met deze grafiek, maar het zou beter zijn om meer jaartallen op de x-as te hebben in dit bereik (1995-2020). Gebruik hiervoor xticks()
:
import pandas as pd import matplotlib.pyplot as plt # Loading the dataset with the average yearly temperatures in Boston and Seattle url = 'https://staging-content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Plotting the data plt.plot(weather_df['Boston'], label='Boston') plt.plot(weather_df['Seattle'], label='Seattle') # Adding a title and legend plt.title('Boston and Seattle average yearly temperatures') plt.legend(loc='upper left') # Setting the x-ticks coordinates and their rotation plt.xticks(range(1995, 2021, 2), rotation=30) # Displaying the plot plt.show()
Nu verschijnt elk tweede jaar op de x-as. Dit is bereikt met behulp van de functie range()
met een stap van 2
voor het argument ticks
.
Daarnaast zijn de ticklabels 30 graden tegen de klok in gedraaid met het sleutelwoord rotation
voor een betere leesbaarheid.
Ticklabels kunnen ook handmatig worden opgegeven door een lijst door te geven aan het argument labels
(bijvoorbeeld labels = ['label1', 'label2']
).
Aanpassen van aslabels
U kunt de functies xlabel()
en ylabel()
uit de module pyplot
gebruiken om de labels voor de x-as en y-as in te stellen. Deze functies vereisen slechts één parameter: het label zelf (een string
).
import pandas as pd import matplotlib.pyplot as plt url = 'https://content-media-cdn.codefinity.com/courses/47339f29-4722-4e72-a0d4-6112c70ff738/weather_data.csv' weather_df = pd.read_csv(url, index_col=0) # Plotting the data plt.plot(weather_df['Boston'], label='Boston') plt.plot(weather_df['Seattle'], label='Seattle') # Adding title, legend, and labels plt.title('Boston and Seattle average yearly temperatures') plt.legend(loc='upper left') plt.xticks(range(1995, 2021, 2), rotation=30) plt.ylabel('Temperature, °F') # Displaying the plot plt.show()
Het is ook mogelijk om het uiterlijk van het label aan te passen, bijvoorbeeld de lettergrootte instellen via het fontsize
sleutelargument of de kleur via het color
sleutelargument.
Daarnaast is er de loc
parameter die de locatie van het label specificeert (center
is standaard).
Voor het x-as label zijn
'left'
,'center'
en'right'
mogelijke waarden;Voor de y-as zijn in plaats van
'left'
en'right'
de opties'top'
en'bottom'
.
Swipe to start coding
- Gebruik de juiste functie om
data_linear
als x-as ticks in te stellen. - Gebruik de juiste functie om
'x'
als x-as label in te stellen. - Gebruik
'right'
als locatie voor het x-as label. - Gebruik de juiste functie om
'y'
als y-as label in te stellen. - Gebruik
'top'
als locatie voor het y-as label. - Stel de parameter
rotation
in op0
voor het y-as label.
Oplossing
Bedankt voor je feedback!