我有以下代码来生成热力图 (pcolormesh
)。
import matplotlib.pyplot as plt
import numpy as np
vals = np.linspace(-np.pi/2, np.pi/2, 101)
x, y = np.meshgrid(vals, vals)
z = np.abs(np.sinc(x) * np.sinc(y))
xDeg = np.rad2deg(x)
yDeg = np.rad2deg(y)
plt.pcolormesh(xDeg, yDeg, z, cmap = 'jet', vmin = 0, vmax = 1)
plt.colorbar()
plt.axis([-90, 90, -90, 90])
ticks = np.linspace(-90, 90, 13)
plt.xticks(ticks)
plt.yticks(ticks)
print np.mean(z) # 0.186225110029
print np.sqrt(np.mean(z**2)) # 0.295710882276
plt.show()
我想要放置:
- 在色条上标记平均值(0.186)。
- 在色条上绘制一条水平线,表示RMS值(0.295)。
有任何意见?
(0,1)
。在所有情况下,x轴和y轴的限制将都是(min(data), max(data))
。 - S.A.cb.ax.axhline(rms, c='w')
来绘制水平线可能会更清晰/更稳健。 - undefined