que tenía el mismo problema que la OP (creo!), Pero no pudo hacer que funcionara de la manera especificada por Lastalda. No sé si he interpretado la pregunta correctamente, pero he encontrado otra solución (aunque probablemente sea una manera realmente mala de hacerlo).
Esta era la forma en que lo hice:
plt.hist([1,11,21,31,41], bins=[0,10,20,30,40,50], weights=[10,1,40,33,6]);
que crea esto:
Así que el primer parámetro básicamente 'inicializa' la papelera - Soy específicamente creando un número que se encuentra entre el rango que establecí en el parámetro bins.
Para demostrar esto, observe la matriz en el primer parámetro ([1,11,21,31,41]) y la matriz 'bins' en el segundo parámetro ([0,10,20,30,40] , 50]):
- el número 1 (de la primera matriz) se sitúa entre 0 y 10 (en el array 'bins')
- el número 11 (de la primera matriz) se sitúa entre 11 y 20 (en el array 'bins')
- el número 21 (de la primera matriz) se encuentra entre 21 y 30 (en los contenedores 'array), etc.
Luego estoy usando el parámetro 'pesos' para definir el tamaño de cada contenedor. Esta es la matriz utilizada para el parámetro de ponderaciones: [10,1,40,33,6].
Así que el bin 0 a 10 se le da el valor 10, el 11 al 20 bin se le da el valor de 1, la bandeja 21 a 30 se da el valor de 40, etc.
Tenga en cuenta que la última línea solo funciona para enteros, no para flotantes. – Gabriel
reemplaza el rango (...) con np.arange (...) para que funcione con flotadores. – macrocosme
Pregunta adicional, ¿cómo puedo calcular el eje para ver el valor de cada contenedor? Ahora solo puedo ver '10..20..30..' – cqcn1991