logo

Trazar histograma en Python usando Matplotlib

Los histogramas son una herramienta fundamental en la visualización de datos, ya que proporcionan una representación gráfica de la distribución de los datos. Son particularmente útiles para explorar datos continuos, como mediciones numéricas o lecturas de sensores. Este artículo lo guiará a través del proceso de Trazar histograma en Pitón usando Matplotlib , que cubre los pasos esenciales desde la preparación de datos hasta la generación del gráfico del histograma.

¿Qué son los histogramas de Matplotlib?

A histograma representa datos proporcionados en forma de algunos grupos. Es un método preciso para la representación gráfica de la distribución de datos numéricos. Es un tipo de gráfico de barras donde el eje X representa los rangos de contenedores mientras que el eje Y brinda información sobre la frecuencia.

Creando un histograma Matplotlib

Para crear un histograma de Matplotlib, el primer paso es crear un contenedor de rangos, luego distribuir todo el rango de valores en una serie de intervalos y contar los valores que caen en cada uno de los intervalos. Los contenedores se identifican como intervalos de variables consecutivos y que no se superponen. matplotlib.pyplot.hist() La función se utiliza para calcular y crear un histograma de x.



La siguiente tabla muestra los parámetros aceptados por la función matplotlib.pyplot.hist():

Atributo Parámetro
X matriz o secuencia de matriz
contenedores El parámetro opcional contiene un número entero, una secuencia o cadenas.
densidad El parámetro opcional contiene valores booleanos.
rango El parámetro opcional representa el rango superior e inferior de contenedores.
tipo de hist parámetro opcional utilizado para crear el tipo de histograma [barra, apilada, paso, relleno por pasos], el valor predeterminado es barra
alinear El parámetro opcional controla el trazado del histograma [izquierda, derecha, centro]
pesas El parámetro opcional contiene una serie de pesos que tienen las mismas dimensiones que x.
abajo Ubicación de la línea base de cada contenedor.
ancho parámetro opcional que es el ancho relativo de las barras con respecto al ancho del contenedor
color Parámetro opcional utilizado para establecer el color o la secuencia de especificaciones de color.
etiqueta cadena de parámetro opcional o secuencia de cadena para coincidir con múltiples conjuntos de datos
registro Parámetro opcional utilizado para configurar el eje del histograma en escala logarítmica.

Trazar histograma en Python usando Matplotlib

Aquí veremos diferentes métodos para trazar histogramas en Matplotlib en Pitón :

  • Histograma básico
  • Histograma personalizado con gráfico de densidad
  • Histograma personalizado con marca de agua
  • Múltiples histogramas con subtramas
  • Histograma apilado
  • Histograma 2D (gráfico Hexbin)

Crear un histograma básico en Matplotlib

Creemos un histograma básico en Matplotlib usando Python de algunos valores aleatorios.

unirse a la actualización de mysql

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()>

>

>

Producción:

Histograma en Python usando Matplotlib

Histograma personalizado en Matplotlib con gráfico de densidad

Creemos un histograma personalizado con un gráfico de densidad usando Matplotlib y Seaborn en Python. El gráfico resultante visualiza la distribución de datos aleatorios con una estimación de densidad suave.

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()>

>

>

Producción:

Histograma Matplotlib

Histograma personalizado con marca de agua

Cree un histograma personalizado usando Matplotlib en Python con características específicas. Incluye elementos de estilo adicionales, como eliminar marcas de eje, agregar relleno y establecer un degradado de color para una mejor visualización.

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()>

aleatorio c

>

>

Producción :

Histograma usando Matplotlib

Múltiples histogramas con subtramas

Generemos dos histogramas uno al lado del otro usando Matplotlib en Python, cada uno con su propio conjunto de datos aleatorios y proporcione una comparación visual de las distribuciones dedata1>ydata2>usando histogramas.

Python3




matriz ordenada en java

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()>

>

>

Producción:

Captura de pantalla-2023-12-05-222526

Histograma apilado usando Matplotlib

Generemos un histograma apilado usando Matplotlib en Python, que represente dos conjuntos de datos con diferentes distribuciones de datos aleatorias. El histograma apilado proporciona información sobre la distribución de frecuencia combinada de los dos conjuntos de datos.

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()>

>

>

Producción:

Captura de pantalla-2023-12-05-222933

Trazar histograma 2D (gráfico Hexbin) usando Matplotlib

Generemos un gráfico hexbin 2D usando Matplotlib en Python, proporciona una representación visual de la distribución de datos 2D, donde los hexágonos transmiten la densidad de los puntos de datos. La barra de colores ayuda a interpretar la densidad de puntos en diferentes regiones del gráfico.

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()>

multihilo java

>

>

Producción:

Captura de pantalla-2023-12-05-222826

Conclusión

Trazar histogramas de Matplotlib es un proceso simple y directo. Al utilizar elhist()>función, podemos crear fácilmente histogramas con diferentes anchos y bordes de contenedor. También podemos personalizar la apariencia de los histogramas para satisfacer nuestras necesidades.