Forudsætning
Hvis du er en ny Python-bruger, skal du først oprette miljøet for at vise output fra boksplottet. Du kan bruge enhver Python-tolk til at udføre koden. I denne vejledning bruger jeg spyder3 for at udføre koden. Hvis du ikke har installeret pandaer og søfødt biblioteker før, så skal du køre følgende kommando fra terminalen for at installere disse biblioteker:
$ pip3 installerer pandaer havfødteBokse plot med pandaer
Det boxplot () metode til pandaer bruges til at generere boksplotfigurer baseret på datarammen. Denne metode indeholder mange argumenter; nogle af disse argumenter bruges i eksemplerne nedenfor. Denne del af vejledningen indeholder to eksempler, der viser dig, hvordan du opretter boksplots i pandaer. Du kan bruge tilfældigt genererede data i NumPy-biblioteket eller dataene fra en CSV-fil til at generere et feltplot i pandaer.
Eksempel 1: Boksdiagrammer baseret på tilfældige værdier
Boksen plots i det følgende eksempel blev genereret ved hjælp af NumPy og pandaer. NumPy-biblioteket bruges i scriptet til at oprette et datarammeobjekt ved at generere et todimensionelt array med tilfældige værdier, der indeholder 5 rækker og 5 kolonner. Indholdet af datarammen udskrives ved hjælp af hovedet() metode. Dernæst boxplot () metoden bruges til at generere boksdiagrammer med blå farve, skriftstørrelse 10 og en 30 graders rotationsvinkel til visning af kolonneværdier.
#!/ usr / bin / env python3# Importer pandabibliotek
importer pandaer som pd
# Importer NumPy-bibliotek for at oprette tilfældige tal til arrayet
importer numpy som np
"
Generer datasæt baseret på tilfældigt oprettet NumPy-array
og fem kolonneværdier
"
dataframe = pd.DataFrame (np.tilfældig.randn (5,5), kolonner = ['2016', '2017', '2018',
'2019', '2020'])
# Udskriv værdierne for dataframe
udskrive (dataframe.hoved())
# Vis feltplottet baseret på dataframe-værdierne
dataframe.boxplot (grid = 'false', color = 'blue', fontstørrelse = 10, rot = 30)
Produktion
Følgende output vises efter udførelse af koden.
Eksempel 2: Boksdiagrammer baseret på CSV-data
Boxplots i det følgende eksempel blev genereret ud fra CSV-data. Opret en CSV-fil med navnet bank.csv ved hjælp af følgende data.
bank.csv
SL, klientnavn, kontotype, køn, saldo1, Maria Hernandez, Saving, Kvinde, 120000
2, Mary Smith, nuværende, kvinde, 40000
3, David Smith, nuværende, mand, 379000
4, Maria Rodriguez, Saving, Kvinde, 56000
5, Mark Lee, Saving, Mand, 93500
6, Jonathan Bing, nuværende, mand, 5900
7, Daniel Williams, Saving, Mand, 2300
8, Mike Brown, nuværende, mand, 124888
9, Paul Smith, nuværende, mand, 59450
10, Maria Lopez, Saving, Kvinde, 487600
I det følgende script, matplotlib bibliotek blev brugt til at indstille figurstørrelsen på boksdiagrammet og til at vise output inline. Alle optegnelser over banken.csv filen blev indlæst ved hjælp af read_csv () metode til pandaer. De første otte poster af datarammen blev derefter udskrevet ved hjælp af hoved() metode. Det boxplot () metoden blev brugt i den følgende erklæring til at tegne boksdiagrammet ved hjælp af rød farve baseret på 'Kontotype' med kolonnen 'Balance.''
#!/ usr / bin / env python3# Importer pandaer til generering af plottet
importer pandaer som pd
# Importer matplotlib for at indstille figurstørrelsen på kasse plot
importer matplotlib.pyplot som plt
# Importer get_ipython for at formatere output inline
fra IPython import get_ipython
get_ipython ().run_line_magic ('matplotlib', 'inline')
# Opsæt figurstørrelsen
plt.rcParams ['figur.figsize '] = (8,4)
# Indlæs datasættet fra en CSV-fil
df = pd.read_csv ("bank.csv ")
# Udskriv de første 8 rækker af de indlæste data
udskrive (df.hoved (8))
# Vis feltplotterne baseret på den anvendte parameter
df.boxplot (af = 'Account_Type', grid = 'True', column = ['Balance'], color = 'red')
Produktion
Følgende output vises efter udførelse af koden.
Kassetomter med havfødte
Et andet bibliotek med Python, der ofte bruges til at tegne boksplots, er biblioteket søfødt. En af de vigtige funktioner i dette bibliotek er, at det har mange indbyggede prøvedatasæt til at teste forskellige opgaver. De næste to eksempler vil dække brugen af to forskellige eksempeldatasæt til at tegne boksdiagrammer ved hjælp af søfødt bibliotek.
Eksempel 3: Boxplots baseret på x-parameter
Følgende eksempel bruger et eksempeldatasæt, der hedder 'diamanter, ' fra den søfødte bibliotek for at generere boksplottet. Her defineres gitterstil ved hjælp af set_style () metode. Det load_dataset () metode bruges til at indlæse data fra 'diamanter datasæt. De første fem poster udskrives fra datasættet og boxplot () metode bruges derefter til at tegne boksplottet baseret på den navngivne kolonne 'dybde,'med blå farve.
# Importer søfødt bibliotek for at generere boksplotimportere søfødte som sns
# Importer matplotlib for at indstille figurstørrelsen på boksplottet
importer matplotlib.pyplot som plt
# Importer get_ipython for at formatere output inline
fra IPython import get_ipython
get_ipython ().run_line_magic ('matplotlib', 'inline')
# Opsæt gitterstil
sns.set_style ("hvidgitter")
# Opsæt figurstørrelsen
plt.rcParams ['figur.figsize '] = (8,4)
# Indlæs eksempeldatasættet
diamond_dataset = sns.load_dataset ('diamanter')
# Vis de første 5 poster i datasættet
print (diamant_datasæt.hoved())
# Tegn figuren for boksplottet
sns.boxplot (x = diamant_datasæt ['dybde'], farve = 'blå')
Produktion
Følgende output vises efter udførelse af koden.
Eksempel 4: Boksdiagrammer baseret på x- og y-parametre
Følgende eksempel bruger eksempeldatasættet med navnet 'flyvninger'at tegne boksplottet. Her er både x- og y-parametrene for boxplot () metode bruges til at tegne figuren. De andre udsagn svarer til det foregående eksempel.
# Importer søfødt bibliotek for at generere boksplotimportere søfødte som sns
# Importer matplotlib for at indstille figurstørrelsen på boksplottet
importer matplotlib.pyplot som plt
# Importer get_ipython for at formatere output inline
fra IPython import get_ipython
get_ipython ().run_line_magic ('matplotlib', 'inline')
# Opsæt gitterstil
sns.set_style ("darkgrid")
# Opsæt figurstørrelsen
plt.rcParams ['figur.figsize '] = (12,4)
# Indlæs eksempeldatasættet
flight_dataset = sns.load_dataset ('fly')
# Vis de første 5 poster i datasættet
udskriv (flight_dataset.hoved())
# Tegn figuren for boksplottet
sns.boxplot (x = 'måned', y = 'passagerer', data = flight_dataset, farve = 'blå')
Produktion
Følgende output vises efter udførelse af koden.
Konklusion
Når du arbejder med en stor mængde data, kan det være en god idé at sammenfatte dataene ved hjælp af et diagram, f.eks. Denne tutorial brugte flere eksempler til at vise dig, hvordan du genererer boksplots med to Python-biblioteker.