Grupperede Søjlediagrammer
En anden almindelig mulighed er et grupperet søjlediagram, hvor søjlerne for hver kategori placeres side om side i stedet for at blive stablet.
Dette er nyttigt, når du ønsker at sammenligne kategorier på tværs af grupper (som økonomiske sektorer i forskellige lande), snarere end inden for én samlet mængde.
Trin til at oprette et grupperet søjlediagram
Angiv en søjlebredde og opret et array til x-akse positioner ved hjælp af
np.arange()
;Kombinér dine kategoridata i et 2D-array;
Brug en
for
-løkke til at tegne hver gruppe af søjler med funktionenbar()
, og forskyd deres positioner vandret;Tilpas x-aksens tick-positioner og etiketter med
plt.xticks()
.
import matplotlib.pyplot as plt import numpy as np # Labels and data countries = ['USA', 'China', 'Japan'] positions = np.arange(len(countries)) primary = np.array([1.4, 4.8, 0.4]) secondary = np.array([11.3, 6.2, 0.8]) tertiary = np.array([14.2, 8.4, 3.2]) # Group the data sectors = np.array([primary, secondary, tertiary]) # Width of each bar width = 0.25 # Plot each group of bars for i in range(len(sectors)): plt.bar(positions + width * i, sectors[i], width) # Center the group of bars and label the ticks plt.xticks(positions + width, countries) plt.show()
Sådan fungerer xticks()
Første argument flytter mærkerne til midten af hver gruppe søjler;
Andet argument angiver etiketterne ved hjælp af listen
countries
.
Denne metode fungerer for et vilkårligt antal kategorier — juster blot width
for at sikre, at søjlerne ikke overlapper.
Swipe to start coding
- Overfør det korrekte array til
len()
-funktionen. - Brug den korrekte funktion til at plotte søjler.
- Brug den korrekte variabel, som skal ganges med
i
. - Brug den korrekte variabel som indeks for
answers
-arrayet. - Overfør den korrekte variabel som de højrestillede argumenter til plotfunktionen.
Løsning
Tak for dine kommentarer!