Histogram är ett grundläggande verktyg i datavisualisering, som ger en grafisk representation av distributionen av data. De är särskilt användbara för att utforska kontinuerliga data, såsom numeriska mätningar eller sensoravläsningar. Den här artikeln guidar dig genom processen med Plot Histogram in Pytonorm använder sig av Matplotlib , som täcker de väsentliga stegen från databeredning till generering av histogramdiagrammet.
Vad är Matplotlib Histograms?
A Histogram representerar data som tillhandahålls i form av vissa grupper. Det är en korrekt metod för grafisk representation av numerisk datadistribution. Det är en typ av stapeldiagram där X-axeln representerar bin-intervallen medan Y-axeln ger information om frekvens.
Skapa ett Matplotlib-histogram
För att skapa ett Matplotlib-histogram är det första steget att skapa en bin med intervallen, sedan fördela hela intervallet av värdena i en serie intervall och räkna värdena som faller in i vart och ett av intervallen. Bins identifieras som på varandra följande, icke-överlappande intervall av variabler matplotlib.pyplot.hist() funktionen används för att beräkna och skapa ett histogram av x.
Följande tabell visar parametrarna som accepteras av funktionen matplotlib.pyplot.hist() :
| Attribut | Parameter |
|---|---|
| x | array eller sekvens av array |
| papperskorgar | valfri parameter innehåller heltal eller sekvens eller strängar |
| densitet | Valfri parameter innehåller booleska värden |
| räckvidd | Valfri parameter representerar övre och nedre intervall av fack |
| histtyp | valfri parameter som används för att skapa typ av histogram [stapel, staplad, steg, stegfylld], standard är bar |
| justera | valfri parameter styr plottning av histogram [vänster, höger, mitten] |
| vikter | valfri parameter innehåller en rad vikter med samma dimensioner som x |
| botten | platsen för baslinjen för varje behållare |
| rwidth | valfri parameter som är den relativa bredden på staplarna med avseende på fackets bredd |
| Färg | valfri parameter som används för att ställa in färg eller sekvens av färgspecifikationer |
| märka | valfri parametersträng eller sekvens av sträng för att matcha med flera datamängder |
| logga | valfri parameter som används för att ställa in histogramaxeln på loggskala |
Plotta histogram i Python med Matplotlib
Här kommer vi att se olika metoder för att plotta histogram i Matplotlib in Pytonorm :
- Grundläggande histogram
- Anpassat histogram med densitetsdiagram
- Anpassat histogram med vattenstämpel
- Flera histogram med subplots
- Staplat histogram
- 2D Histogram (Hexbin Plot)
Skapa ett grundläggande histogram i Matplotlib
Låt oss skapa ett grundläggande histogram i Matplotlib med Python med några slumpmässiga värden.
datum konvertera till sträng
Python3
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()> |
>
>
Produktion:

Anpassat histogram i Matplotlib med densitetsplot
Låt oss skapa ett anpassat histogram med en densitetsplott med Matplotlib och Seaborn i Python. Den resulterande plotten visualiserar fördelningen av slumpmässiga data med en jämn densitetsuppskattning.
Python3
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()> |
java för looptyper
>
>
Produktion:

Anpassat histogram med vattenstämpel
Skapa ett anpassat histogram med Matplotlib i Python med specifika funktioner. Den innehåller ytterligare stylingelement, som att ta bort axeltickar, lägga till stoppning och ställa in en färggradient för bättre visualisering.
Python3
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()> |
>
>
Utgång:

Flera histogram med subplots
Låt oss generera två histogram sida vid sida med Matplotlib i Python, var och en med sin egen uppsättning slumpmässiga data och ger en visuell jämförelse av fördelningarna avdata1>ochdata2>med hjälp av histogram.
Python3
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()> |
>
>
Produktion:

Staplat histogram med Matplotlib
Låt oss generera ett staplat histogram med Matplotlib i Python, som representerar två datauppsättningar med olika slumpmässiga datafördelningar. Det staplade histogrammet ger insikter i den kombinerade frekvensfördelningen av de två datamängderna.
.tif-fil
Python3
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()> |
>
>
Produktion:

Rita 2D Histogram (Hexbin Plot) med Matplotlib
Låt oss generera en 2D hexbin-plot med Matplotlib i Python, ger en visuell representation av 2D-datadistributionen, där hexagoner förmedlar densiteten av datapunkter. Färgfältet hjälper till att tolka tätheten av punkter i olika delar av plotten.
Python3
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()> |
hur man skapar en array i java
>
>
Produktion:

Slutsats
Att plotta Matplotlib-histogram är en enkel och okomplicerad process. Genom att användahist()>funktion kan vi enkelt skapa histogram med olika lagerbredder och lagerkanter. Vi kan också anpassa utseendet på histogram för att möta våra behov