Anpassning av Axlar
Anpassning av Ticks
För att justera ticks på ett diagram, använd funktionerna i pyplot
-modulen:
xticks
för att anpassa x-axeln;yticks
för att anpassa y-axeln.
Båda funktionerna följer samma syntax och har två viktiga parametrar:
ticks
anger positionerna där ticks ska visas. Du kan använda vilken array-liknande struktur som helst. För att ta bort ticks helt, skicka en tom lista;labels
tilldelar anpassad text till varje tick-position. Detta måste användas tillsammans med parameternticks
.
Du kan även inkludera extra nyckelordsargument för att styla etiketterna och kontrollera deras utseende.
Nedan visas ett av de diagram som nyligen skapats:
Allt ser ganska bra ut i detta diagram, men det vore bättre att ha fler år på x-axeln inom intervallet (1995-2020). Låt oss använda xticks()
för detta syfte:
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 visas vartannat år på x-axeln. Detta uppnåddes genom att använda funktionen range()
med ett steg om 2
för argumentet ticks
.
Dessutom roterades tick-etiketterna 30 grader moturs med hjälp av nyckelordet rotation
för förbättrad läsbarhet.
Tick-etiketter kan även anges manuellt genom att skicka en lista till argumentet labels
(t.ex. labels = ['label1', 'label2']
).
Anpassning av axelrubriker
Du kan använda funktionerna xlabel()
och ylabel()
från modulen pyplot
för att ange rubriker för x-axeln och y-axeln. Dessa funktioner kräver endast en parameter: etiketten (en 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()
Det är också möjligt att ändra etikettens utseende, till exempel ange teckenstorlek via nyckelordet fontsize
eller dess färg via nyckelordet color
.
Dessutom finns parametern loc
som specificerar etikettens placering (center
som standard).
För x-axelns etikett är
'left'
,'center'
och'right'
möjliga värden;För y-axeln används istället för
'left'
och'right'
värdena'top'
och'bottom'
.
Swipe to start coding
- Använd rätt funktion för att ställa in
data_linear
som x-axelns tickmarkeringar. - Använd rätt funktion för att ange
'x'
som etikett för x-axeln. - Använd
'right'
som position för x-axelns etikett. - Använd rätt funktion för att ange
'y'
som etikett för y-axeln. - Använd
'top'
som position för y-axelns etikett. - Ange parametern
rotation
till0
för y-axelns etikett.
Lösning
Tack för dina kommentarer!