logo

Box Plot Pythonissa käyttämällä Matplotlibiä

A Laatikko tontti tunnetaan myös nimellä Whisker juoni luodaan näyttämään yhteenveto tietoarvoista, joilla on ominaisuuksia, kuten minimi, ensimmäinen kvartiili, mediaani, kolmas kvartiili ja maksimi. Laatikkokaaviossa luodaan laatikko ensimmäisestä kvartiilista kolmanteen kvartiiliin, jossa on myös pystysuora viiva, joka kulkee laatikon läpi mediaanissa. Tässä x-akseli tarkoittaa piirrettävää dataa, kun taas y-akseli näyttää taajuusjakauman.

Laatikon luominen

Matplotlib-kirjaston matplotlib.pyplot-moduuli tarjoaa boxplot()-funktion, jonka avulla voimme luoda laatikkokaavioita.



Syntaksi:

matplotlib.pyplot.boxplot(data, notch=Ei mitään, vert=Ei mitään, patch_artist=Ei mitään, widths=Ei mitään)

Parametrit:



Attribuutti Arvo
tiedot piirrettävä matriisi tai taulukon sekvenssi
lovi valinnainen parametri hyväksyy loogiset arvot
Vihreä valinnainen parametri hyväksyy loogiset arvot false ja true vaaka- ja pystysuoralle kuvaajalle
bootstrap valinnainen parametri hyväksyy int määrittää välit lovettujen laatikkokaavioiden ympärillä
käyttäjämediaanit valinnainen parametri hyväksyy datan kanssa yhteensopivan taulukon tai taulukon dimensiojonon
asemat valinnainen parametri hyväksyy taulukon ja asettaa laatikoiden sijainnin
leveydet valinnainen parametri hyväksyy taulukon ja asettaa laatikoiden leveyden
patch_artist valinnainen parametri, jolla on loogisia arvoja
tarrat merkkijonosarja asettaa tunnisteen jokaiselle tietojoukolle
keskiviiva valinnainen, jolla on looginen arvo, yritä hahmontaa keskiviiva laatikon koko leveänä
Tilaus valinnainen parametri määrittää boxplotin järjestyksen

Ax.boxplot()-menetelmälle annetut tietoarvot voivat olla Numpy-taulukko tai Python-lista tai Tuple of arrays. Luodaan laatikkodiagrammi käyttämällä numpy.random.normal()-komentoa satunnaisten tietojen luomiseen. Se ottaa argumenteiksi keskiarvon, keskihajonnan ja halutun määrän arvoja.

Esimerkki:

Python 3






# Import libraries> import> matplotlib.pyplot as plt> import> numpy as np> # Creating dataset> np.random.seed(>10>)> data>=> np.random.normal(>100>,>20>,>200>)> fig>=> plt.figure(figsize>=>(>10>,>7>))> # Creating plot> plt.boxplot(data)> # show plot> plt.show()>

>

>

Lähtö:

box-plot-python

Laatikon mukauttaminen

Matplotlib.pyplot.boxplot() tarjoaa loputtomat mukautusmahdollisuudet laatikkokaavioon. Attribuutti notch = True luo notch-muodon box plotin, patch_artist = True täyttää boxplotin väreillä, voimme asettaa eri värejä eri laatikoille. Attribuutti vert = 0 luo vaakasuuntaisen laatikkokuvaajan. tarrat ovat samat mitat kuin numerotietojoukot.

Esimerkki 1:

Python 3




# Import libraries> import> matplotlib.pyplot as plt> import> numpy as np> # Creating dataset> np.random.seed(>10>)> data_1>=> np.random.normal(>100>,>10>,>200>)> data_2>=> np.random.normal(>90>,>20>,>200>)> data_3>=> np.random.normal(>80>,>30>,>200>)> data_4>=> np.random.normal(>70>,>40>,>200>)> data>=> [data_1, data_2, data_3, data_4]> fig>=> plt.figure(figsize>=>(>10>,>7>))> # Creating axes instance> ax>=> fig.add_axes([>0>,>0>,>1>,>1>])> # Creating plot> bp>=> ax.boxplot(data)> # show plot> plt.show()>

>

edith mack hirsch

>

Lähtö:

box-plot-python

Esimerkki 2: Yritetään muokata yllä olevaa kuvaajaa joillakin mukauttamisilla:

Python 3




# Import libraries> import> matplotlib.pyplot as plt> import> numpy as np> # Creating dataset> np.random.seed(>10>)> data_1>=> np.random.normal(>100>,>10>,>200>)> data_2>=> np.random.normal(>90>,>20>,>200>)> data_3>=> np.random.normal(>80>,>30>,>200>)> data_4>=> np.random.normal(>70>,>40>,>200>)> data>=> [data_1, data_2, data_3, data_4]> fig>=> plt.figure(figsize>=>(>10>,>7>))> ax>=> fig.add_subplot(>111>)> # Creating axes instance> bp>=> ax.boxplot(data, patch_artist>=> True>,> >notch>=>'True'>, vert>=> 0>)> colors>=> [>'#0000FF'>,>'#00FF00'>,> >'#FFFF00'>,>'#FF00FF'>]> for> patch, color>in> zip>(bp[>'boxes'>], colors):> >patch.set_facecolor(color)> # changing color and linewidth of> # whiskers> for> whisker>in> bp[>'whiskers'>]:> >whisker.>set>(color>=>'#8B008B'>,> >linewidth>=> 1.5>,> >linestyle>=>':'>)> # changing color and linewidth of> # caps> for> cap>in> bp[>'caps'>]:> >cap.>set>(color>=>'#8B008B'>,> >linewidth>=> 2>)> # changing color and linewidth of> # medians> for> median>in> bp[>'medians'>]:> >median.>set>(color>=>'red'>,> >linewidth>=> 3>)> # changing style of fliers> for> flier>in> bp[>'fliers'>]:> >flier.>set>(marker>=>'D'>,> >color>=>'#e7298a'>,> >alpha>=> 0.5>)> > # x-axis labels> ax.set_yticklabels([>'data_1'>,>'data_2'>,> >'data_3'>,>'data_4'>])> # Adding title> plt.title(>'Customized box plot'>)> # Removing top axes and right axes> # ticks> ax.get_xaxis().tick_bottom()> ax.get_yaxis().tick_left()> > # show plot> plt.show()>

>

>

Lähtö:

box-plot-python