Подтвердить что ты не робот

График графика графика из данных гистограммы в matplotlib

У меня есть numpy массив ints, представляющий периоды времени, которые я сейчас рисую в гистограмме, чтобы получить хороший график распределения, используя следующий код:

ax.hist(data,bins=100,range=(minimum,maximum),facecolor="r")

Однако я пытаюсь изменить этот график, чтобы представить точные данные, используя строку вместо столбцов, поэтому я могу наложить больше выборок на один и тот же график и дать им быть четкими (в противном случае бары перекрывают друг друга). То, что я пробовал до сих пор, - это собрать массив данных в массив кортежей, содержащий (время, число), а затем построить его с помощью

ax.plot(data[:,0],data[:,1],color="red",lw=2)

Однако это не дает мне ничего близкого, поскольку я не могу точно смоделировать опцию гистограммы в моем заговоре. Есть ли лучший способ сделать это?

4b9b3361

Ответ 1

Вы можете сохранить вывод hist, а затем построить его.

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

Ответ 2

Я очень опаздываю на вечеринку, но, возможно, это будет полезно кому-то другому. Я думаю, что вам нужно установить параметр histtype в "step", т.е.

ax.hist(data,bins=100,range=(minimum,maximum),facecolor="r", histtype = 'step')

См. также http://matplotlib.sourceforge.net/examples/pylab_examples/histogram_demo_extended.html

Ответ 3

Попробуйте ax.plot(zip(*data)[:][0],zip(*data)[:][1],color="red",lw=2)