real - matplotlib python
Trazar el gráfico de línea de datos de histograma en matplotlib (3)
Tengo una gran cantidad de intentos que representan períodos de tiempo, que actualmente estoy trazando en un histograma para obtener un buen gráfico de distribución, utilizando el siguiente código:
ax.hist(data,bins=100,range=(minimum,maximum),facecolor="r")
Sin embargo, estoy intentando modificar este gráfico para representar exactamente los mismos datos utilizando una línea en lugar de barras, por lo que puedo superponer más muestras a la misma gráfica y hacer que sean claras (de lo contrario, las barras se superponen entre sí). Lo que he intentado hasta ahora es agrupar la matriz de datos en una matriz de tuplas que contiene (tiempo, recuento) y luego trazarla utilizando
ax.plot(data[:,0],data[:,1],color="red",lw=2)
Sin embargo, eso no me da nada cercano, ya que no puedo simular con precisión la opción de los contenedores del histograma en mi trama. ¿Hay una mejor manera de hacer esto?
Llego tarde a la fiesta, pero quizás esto sea útil para otra persona. Creo que lo que hay que hacer es establecer el parámetro de tipo de histología en "paso", es decir,
ax.hist(data,bins=100,range=(minimum,maximum),facecolor="r", histtype = ''step'')
Consulte también http://matplotlib.sourceforge.net/examples/pylab_examples/histogram_demo_extended.html
Pruebe ax.plot(zip(*data)[:][0],zip(*data)[:][1],color="red",lw=2)
Puede guardar la salida de hist
y luego trazarla.
import numpy as np
import pylab as p
data=np.array(np.random.rand(1000))
y,binEdges=np.histogram(data,bins=100)
bincenters = 0.5*(binEdges[1:]+binEdges[:-1])
p.plot(bincenters,y,''-'')
p.show()