2013-07-05 65 views
1

我正在使用表格數據:[num1,num2,..., numk](整數數組)。Python - 創建直方圖

我想繪製一個特定形式的直方圖,我將用一個例子來描述。

假設data = [0,5,7,2,3]。我想與直方圖:

寬度的
  • 垃圾箱1.
  • x軸蜱在0,1,2,...,4(一個用於陣列,例如,如果陣列有的每個元素10個元素,刻度將從0到9運行)
  • 對於刻度i和i + 1之間的區間,我們的頻率(高度)等於data[i] + data[i+1],例如在1和2之間,我們有一個高度爲12的矩形。

如何使用matplotlib創建這樣的直方圖?或者如果你願意,可以是numpy。

+0

你有沒有試過的示例代碼? – doctorlove

+0

downvoter請留下您爲什麼downvoted的評論 – Christoph

回答

0

我瘦k該設計是你在找什麼:

data = np.array([0,5,7,2,3]) 
datax = np.arange(np.size(data)) 
fig = plt.figure(1, figsize=(7,7)) 
ax = fig.add_subplot(111) 
ax.plot(datax[:-1], data[:-1]+data[1:], color='k') 
ax.xaxis.set_ticks(datax) 
ax.set_ylim(0,13) 
ax.set_xlim(0,3) 
plt.show() 

產生如下圖所示: Figure is the result of the previous code

但是當你在你的問題是指它不是一個直方圖。我其實不明白你爲什麼在談論「直方圖」。