我只是想问一下如何使用matplotlib最好地创建频率像素图。这个词我的意思是:
http://img513.imageshack.us/img513/8677/g8df.png
正方形的颜色代表相应小时和间隔的频率。
我正在考虑绘制一系列50个补丁并根据数据并使用色标对它们进行着色?或者有更好的方法吗?
由于
答案 0 :(得分:1)
听起来你基本上只想要plt.hist2d
。
import numpy as np
import matplotlib.pyplot as plt
data = np.array([[8, 15, 1, 65, 79],
[45, 22, 60, 43, 16],
[3, 75, 90, 11, 14],
[89, 32, 27, 59, 99],
[62, 5, 54, 92, 81]])
nrows, ncols = data.shape
# Generate 1-based row indicies, similar to your table
row = np.vstack(ncols * [np.arange(nrows) + 1]).T
x, y = row.flatten(), data.flatten()
xbins = np.arange(nrows+1) + 0.5
plt.hist2d(x, y, bins=(xbins, 10), cmap=plt.cm.Reds)
plt.show()