logo

Histogrammin piirtäminen Pythonissa Matplotlibillä

Histogrammit ovat perustyökalu tietojen visualisoinnissa, ja ne tarjoavat graafisen esityksen tiedon jakautumisesta. Ne ovat erityisen hyödyllisiä jatkuvan tiedon, kuten numeeristen mittausten tai anturin lukemien, tutkimiseen. Tämä artikkeli opastaa sinua Plot Histogram in -prosessin läpi Python käyttämällä Matplotlib , joka kattaa olennaiset vaiheet tietojen valmistelusta histogrammikaavion luomiseen.

Mikä on Matplotlib Histograms?

A Histogrammi edustaa joidenkin ryhmien muodossa toimitettua tietoa. Se on tarkka menetelmä numeerisen tiedon jakauman graafiseen esittämiseen. Se on eräänlainen pylväsdiagrammi, jossa X-akseli edustaa bin-alueita, kun taas Y-akseli antaa tietoja taajuudesta.

Matplotlib-histogrammin luominen

Matplotlib-histogrammin luomiseksi ensimmäinen askel on luoda alueista joukko, jakaa sitten koko arvojen alue sarjaan ja laskea arvot, jotka kuuluvat kuhunkin intervalliin. Säiliöt tunnistetaan peräkkäisiksi, ei-päällekkäisiksi muuttujien aikaväleiksi matplotlib.pyplot.hist() funktiota käytetään x:n histogrammin laskemiseen ja luomiseen.



Seuraavassa taulukossa näkyvät matplotlib.pyplot.hist()-funktion hyväksymät parametrit:

Attribuutti Parametri
x taulukko tai taulukon sekvenssi
roskakorit valinnainen parametri sisältää kokonaisluvun tai sekvenssin tai merkkijonoja
tiheys Valinnainen parametri sisältää loogisia arvoja
alue Valinnainen parametri edustaa ylemmät ja alemmat säiliöt
histtype valinnainen parametri, jota käytetään luomaan histogrammin tyyppi [bar, barstacked, step, stepfilled], oletus on palkki
kohdistaa valinnainen parametri ohjaa histogrammin piirtämistä [vasen, oikea, keski]
painot valinnainen parametri sisältää joukon painoja, joilla on samat mitat kuin x
pohja kunkin säiliön perusviivan sijainti
leveys valinnainen parametri, joka on palkkien suhteellinen leveys suhteessa säiliön leveyteen
väri valinnainen parametri, jota käytetään värin tai värien järjestyksen asettamiseen
etiketti valinnainen parametrimerkkijono tai merkkijonosarja, joka vastaa useita tietojoukkoja
Hirsi valinnainen parametri, jota käytetään histogrammin akselin asettamiseen log-asteikolla

Histogrammin piirtäminen Pythonissa Matplotlibillä

Täällä näemme erilaisia ​​​​menetelmiä Histogrammin piirtämiseen Matplotlibissa Python :

  • Perus histogrammi
  • Mukautettu histogrammi tiheyskaaviolla
  • Mukautettu histogrammi vesileimalla
  • Useita histogrammeja alikaavioilla
  • Pinottu histogrammi
  • 2D-histogrammi (Hexbin Plot)

Luo perushistogrammi Matplotlibissä

Luodaan perushistogrammi Matplotlibiin Pythonilla joistakin satunnaisista arvoista.

tcp ja ip malli

Python 3




import> matplotlib.pyplot as plt> import> numpy as np> # Generate random data for the histogram> data>=> np.random.randn(>1000>)> # Plotting a basic histogram> plt.hist(data, bins>=>30>, color>=>'skyblue'>, edgecolor>=>'black'>)> # Adding labels and title> plt.xlabel(>'Values'>)> plt.ylabel(>'Frequency'>)> plt.title(>'Basic Histogram'>)> # Display the plot> plt.show()>

>

>

Lähtö:

Pythonin histogrammi käyttämällä Matplotlibiä

Mukautettu histogrammi Matplotlibissä tiheyskaaviolla

Luodaan mukautettu histogrammi, jossa on tiheyskäyrä käyttämällä Matplotlibiä ja Seabornia Pythonissa. Tuloksena oleva käyrä visualisoi satunnaisten tietojen jakauman tasaisella tiheysestimaatilla.

Python 3




import> matplotlib.pyplot as plt> import> seaborn as sns> import> numpy as np> # Generate random data for the histogram> data>=> np.random.randn(>1000>)> # Creating a customized histogram with a density plot> sns.histplot(data, bins>=>30>, kde>=>True>, color>=>'lightgreen'>, edgecolor>=>'red'>)> # Adding labels and title> plt.xlabel(>'Values'>)> plt.ylabel(>'Density'>)> plt.title(>'Customized Histogram with Density Plot'>)> # Display the plot> plt.show()>

>

>

Lähtö:

Histogrammi Matplotlib

Mukautettu histogrammi vesileimalla

Luo mukautettu histogrammi käyttämällä Matplotlibiä Pythonissa tietyillä ominaisuuksilla. Se sisältää lisämuotoiluelementtejä, kuten akselin rastien poistamisen, pehmusteen lisäämisen ja värigradientin asettamisen parempaa visualisointia varten.

Python 3


linux $home



import> matplotlib.pyplot as plt> import> numpy as np> from> matplotlib>import> colors> from> matplotlib.ticker>import> PercentFormatter> # Creating dataset> np.random.seed(>23685752>)> N_points>=> 10000> n_bins>=> 20> # Creating distribution> x>=> np.random.randn(N_points)> y>=> .>8> *>*> x>+> np.random.randn(>10000>)>+> 25> legend>=> [>'distribution'>]> # Creating histogram> fig, axs>=> plt.subplots(>1>,>1>,> >figsize>=>(>10>,>7>),> >tight_layout>=> True>)> # Remove axes splines> for> s>in> [>'top'>,>'bottom'>,>'left'>,>'right'>]:> >axs.spines[s].set_visible(>False>)> # Remove x, y ticks> axs.xaxis.set_ticks_position(>'none'>)> axs.yaxis.set_ticks_position(>'none'>)> > # Add padding between axes and labels> axs.xaxis.set_tick_params(pad>=> 5>)> axs.yaxis.set_tick_params(pad>=> 10>)> # Add x, y gridlines> axs.grid(b>=> True>, color>=>'grey'>,> >linestyle>=>'-.'>, linewidth>=> 0.5>,> >alpha>=> 0.6>)> # Add Text watermark> fig.text(>0.9>,>0.15>,>'Jeeteshgavande30'>,> >fontsize>=> 12>,> >color>=>'red'>,> >ha>=>'right'>,> >va>=>'bottom'>,> >alpha>=> 0.7>)> # Creating histogram> N, bins, patches>=> axs.hist(x, bins>=> n_bins)> # Setting color> fracs>=> ((N>*>*>(>1> /> 5>))>/> N.>max>())> norm>=> colors.Normalize(fracs.>min>(), fracs.>max>())> for> thisfrac, thispatch>in> zip>(fracs, patches):> >color>=> plt.cm.viridis(norm(thisfrac))> >thispatch.set_facecolor(color)> # Adding extra features> plt.xlabel(>'X-axis'>)> plt.ylabel(>'y-axis'>)> plt.legend(legend)> plt.title(>'Customized histogram'>)> # Show plot> plt.show()>

>

>

fmovies intia

Lähtö:

Histogrammi käyttämällä Matplotlibiä

Useita histogrammeja alikaavioilla

Luodaan kaksi histogrammia vierekkäin käyttämällä Pythonin Matplotlibiä, joista jokaisella on omat satunnaiset tiedot ja jotka tarjoavat visuaalisen vertailundata1>jadata2>käyttämällä histogrammeja.

Python 3




import> matplotlib.pyplot as plt> import> numpy as np> # Generate random data for multiple histograms> data1>=> np.random.randn(>1000>)> data2>=> np.random.normal(loc>=>3>, scale>=>1>, size>=>1000>)> # Creating subplots with multiple histograms> fig, axes>=> plt.subplots(nrows>=>1>, ncols>=>2>, figsize>=>(>12>,>4>))> axes[>0>].hist(data1, bins>=>30>, color>=>'Yellow'>, edgecolor>=>'black'>)> axes[>0>].set_title(>'Histogram 1'>)> axes[>1>].hist(data2, bins>=>30>, color>=>'Pink'>, edgecolor>=>'black'>)> axes[>1>].set_title(>'Histogram 2'>)> # Adding labels and title> for> ax>in> axes:> >ax.set_xlabel(>'Values'>)> >ax.set_ylabel(>'Frequency'>)> # Adjusting layout for better spacing> plt.tight_layout()> # Display the figure> plt.show()>

>

>

Lähtö:

Kuvakaappaus-2023-12-05-222526

Pinottu histogrammi Matplotlibillä

Luodaan pinottu histogrammi Pythonin Matplotlibillä, joka edustaa kahta tietojoukkoa, joilla on erilaiset satunnaiset tietojakaumat. Pinottu histogrammi antaa käsityksen kahden tietojoukon yhdistetystä taajuusjakaumasta.

Python 3




import> matplotlib.pyplot as plt> import> numpy as np> # Generate random data for stacked histograms> data1>=> np.random.randn(>1000>)> data2>=> np.random.normal(loc>=>3>, scale>=>1>, size>=>1000>)> # Creating a stacked histogram> plt.hist([data1, data2], bins>=>30>, stacked>=>True>, color>=>[>'cyan'>,>'Purple'>], edgecolor>=>'black'>)> # Adding labels and title> plt.xlabel(>'Values'>)> plt.ylabel(>'Frequency'>)> plt.title(>'Stacked Histogram'>)> # Adding legend> plt.legend([>'Dataset 1'>,>'Dataset 2'>])> # Display the plot> plt.show()>

>

>

Lähtö:

Kuvakaappaus-2023-12-05-222933

Piirrä 2D-histogrammi (Hexbin Plot) käyttämällä Matplotlibiä

Luodaan 2D-heksabiinidiagrammi Pythonin Matplotlibilla, tarjoaa visuaalisen esityksen 2D-datajakaumasta, jossa kuusikulmiot välittävät datapisteiden tiheyden. Väripalkki auttaa tulkitsemaan pisteiden tiheyttä kuvaajan eri alueilla.

Python 3




import> matplotlib.pyplot as plt> import> numpy as np> # Generate random 2D data for hexbin plot> x>=> np.random.randn(>1000>)> y>=> 2> *> x>+> np.random.normal(size>=>1000>)> # Creating a 2D histogram (hexbin plot)> plt.hexbin(x, y, gridsize>=>30>, cmap>=>'Blues'>)> # Adding labels and title> plt.xlabel(>'X values'>)> plt.ylabel(>'Y values'>)> plt.title(>'2D Histogram (Hexbin Plot)'>)> # Adding colorbar> plt.colorbar()> # Display the plot> plt.show()>

dynaaminen ohjelmointi

>

>

Lähtö:

Kuvakaappaus-2023-12-05-222826

Johtopäätös

Matplotlib-histogrammien piirtäminen on yksinkertainen ja suoraviivainen prosessi. Käyttämällähist()>-toiminnon avulla voimme helposti luoda histogrammeja, joissa on eri leveys ja eri reunoja. Voimme myös muokata histogrammien ulkoasua tarpeidemme mukaan