matplotlib.pyplot.hist #
- matplotlib.pyplot. hist ( x , bins = Ninguno , rango = Ninguno , densidad = Falso , pesos = Ninguno , acumulativo = Falso , fondo = Ninguno , histtype = 'barra' , alinear = 'medio' , orientación = 'vertical' , rwidth = Ninguno , registro = falso , color =Ninguno , etiqueta = Ninguno , apilado = Falso , * , datos = Ninguno , ** kwargs ) [fuente] #
Calcular y trazar un histograma.
Este método utiliza
numpy.histogram
para agrupar los datos en x y contar la cantidad de valores en cada contenedor, luego dibuja la distribución como aBarContainer
oPolygon
. Los parámetros de intervalos , rango , densidad y pesos se reenvían anumpy.histogram
.Si los datos ya se han agrupado y contado, utilice
bar
ostairs
para trazar la distribución:counts, bins = np.histogram(x) plt.stairs(bins, counts)
Alternativamente, grafique contenedores precalculados y conteos usando
hist()
tratando cada contenedor como un solo punto con un peso igual a su conteo:plt.hist(bins[:-1], bins, weights=counts)
La entrada de datos x puede ser una matriz singular, una lista de conjuntos de datos de longitudes potencialmente diferentes ([ x0 , x1 , ...]) o un ndarray 2D en el que cada columna es un conjunto de datos. Tenga en cuenta que la forma ndarray se transpone en relación con la forma de lista. Si la entrada es una matriz, el valor devuelto es una tupla ( n , bins , patches ); si la entrada es una secuencia de matrices, entonces el valor devuelto es una tupla ([ n0 , n1 , ...], bins , [ patches0 , patches1 , ...]).
Las matrices enmascaradas no son compatibles.
- Parámetros :
- x (n,) matriz o secuencia de (n,) matrices
Valores de entrada, esto toma una sola matriz o una secuencia de matrices que no se requiere que tengan la misma longitud.
- bins int o secuencia o str, predeterminado:
rcParams["hist.bins"]
(predeterminado:10
) Si bins es un número entero, define el número de bins de igual ancho en el rango.
Si bins es una secuencia, define los bordes del bin, incluido el borde izquierdo del primer bin y el borde derecho del último bin; en este caso, los contenedores pueden estar espaciados de manera desigual. Todos excepto el último contenedor (más a la derecha) están entreabiertos. En otras palabras, si bins es:
[1, 2, 3, 4]
entonces el primer contenedor es (incluyendo 1, pero excluyendo 2) y el segundo . El último contenedor, sin embargo, es , que incluye 4.
[1, 2)
[2, 3)
[3, 4]
Si bins es una cadena, es una de las estrategias de agrupación admitidas por
numpy.histogram_bin_edges
: 'auto', 'fd', 'doane', 'scott', 'stone', 'rice', 'sturges' o 'sqrt'.- tupla de rango o Ninguno, por defecto: Ninguno
El rango inferior y superior de los contenedores. Los valores atípicos inferiores y superiores se ignoran. Si no se proporciona, el rango es . El rango no tiene efecto si bins es una secuencia.
(x.min(), x.max())
Si los contenedores son una secuencia o se especifica un rango , el ajuste de escala automático se basa en el rango de contenedores especificado en lugar del rango de x.
- densidad booleana, por defecto: Falso
Si
True
, dibuje y devuelva una densidad de probabilidad: cada contenedor mostrará el conteo sin procesar del contenedor dividido por el número total de conteos y el ancho del contenedor ( ), de modo que el área debajo del histograma se integre a 1 ( ).density = counts / (sum(counts) * np.diff(bins))
np.sum(density * np.diff(bins)) == 1
Si stacked también es
True
, la suma de los histogramas se normaliza a 1.- pesos (n,) tipo matriz o Ninguno, predeterminado: Ninguno
Una matriz de pesos, de la misma forma que x . Cada valor en x solo contribuye con su peso asociado al recuento de contenedores (en lugar de 1). Si la densidad es
True
, los pesos se normalizan, de modo que la integral de la densidad en el rango sigue siendo 1.- booleano acumulativo o -1, predeterminado: Falso
Si
True
, se calcula un histograma en el que cada contenedor proporciona los recuentos en ese contenedor más todos los contenedores para valores más pequeños. El último contenedor proporciona el número total de puntos de datos.Si la densidad también lo es
True
, el histograma se normaliza de modo que el último intervalo sea igual a 1.Si acumulativo es un número menor que 0 (por ejemplo, -1), la dirección de acumulación se invierte. En este caso, si la densidad también es
True
, el histograma se normaliza de modo que el primer intervalo sea igual a 1.- similar a una matriz inferior , escalar o Ninguno, predeterminado: Ninguno
Ubicación de la parte inferior de cada contenedor, es decir. los contenedores se dibujan de
bottom
a Si es un escalar, la parte inferior de cada contenedor se desplaza en la misma cantidad. Si es una matriz, cada contenedor se desplaza de forma independiente y la longitud de la parte inferior debe coincidir con el número de contenedores. Si ninguno, el valor predeterminado es 0.bottom + hist(x, bins)
- histtype {'bar', 'barstacked', 'step', 'stepfilled'}, predeterminado: 'bar'
El tipo de histograma a dibujar.
'bar' es un histograma tradicional de tipo barra. Si se dan varios datos, las barras se organizan una al lado de la otra.
'barstacked' es un histograma de tipo barra en el que se apilan varios datos uno encima del otro.
'paso' genera un diagrama de líneas que por defecto está vacío.
'stepfilled' genera un gráfico de líneas que se rellena de forma predeterminada.
- alinear {'izquierda', 'medio', 'derecha'}, predeterminado: 'medio'
La alineación horizontal de las barras del histograma.
'izquierda': las barras están centradas en los bordes izquierdos del contenedor.
'mid': las barras están centradas entre los bordes del bin.
'derecha': las barras se centran en los bordes derechos de la bandeja.
- orientación {'vertical', 'horizontal'}, por defecto: 'vertical'
Si es 'horizontal',
barh
se utilizará para histogramas de tipo barra y los kwarg inferiores serán los bordes izquierdos.- rwidth float o Ninguno, por defecto: Ninguno
El ancho relativo de las barras como una fracción del ancho del contenedor. Si
None
, calcula automáticamente el ancho.Se ignora si histtype es 'step' o 'stepfilled'.
- bool de registro , predeterminado: falso
Si
True
, el eje del histograma se establecerá en una escala logarítmica.- color color o tipo matriz de colores o Ninguno, predeterminado: Ninguno
Color o secuencia de colores, uno por conjunto de datos. Predeterminado (
None
) utiliza la secuencia de colores de línea estándar.- label str o Ninguno, por defecto: Ninguno
Cadena o secuencia de cadenas para hacer coincidir varios conjuntos de datos. Los gráficos de barras producen varios parches por conjunto de datos, pero solo el primero obtiene la etiqueta, por lo que
legend
funcionará como se esperaba.- bool apilado , predeterminado: falso
Si
True
, se apilan varios datos uno encima del otro SiFalse
se organizan varios datos uno al lado del otro si histtype es 'bar' o uno encima de otro si histtype es 'step'
- Devoluciones :
- n array o lista de arrays
Los valores de los intervalos de histograma. Ver densidad y pesos para una descripción de la posible semántica. Si la entrada x es una matriz, entonces esta es una matriz de longitud nbins . Si la entrada es una secuencia de matrices , entonces esta es una lista de matrices con los valores de los histogramas para cada una de las matrices en el mismo orden. El dtype del arreglo n (o de sus arreglos de elementos) siempre será flotante incluso si no se usa ponderación o normalización.
[data1, data2, ...]
- matriz de contenedores
Los bordes de los contenedores. Longitud nbins + 1 (nbins borde izquierdo y borde derecho del último bin). Siempre una única matriz, incluso cuando se pasan varios conjuntos de datos.
- parches
BarContainer
o lista de un soloPolygon
o lista de tales objetos Contenedor de artistas individuales que se usa para crear el histograma o la lista de dichos contenedores si hay varios conjuntos de datos de entrada.
- Otros parámetros :
- objeto indexable de datos , opcional
Si se proporcionan, los siguientes parámetros también aceptan una cadena
s
, que se interpreta comodata[s]
(a menos que esto genere una excepción):x , pesos
- **kwargs
Patch
propiedades
Ver también
notas
Para un gran número de bins (>1000), el trazado puede ser significativamente más rápido si histtype se establece en 'step' o 'stepfilled' en lugar de 'bar' o 'barstacked'.