绘制一个超出数据集末尾的轴限制的imshow图

时间:2017-07-06 09:50:01

标签: python matplotlib axes imshow

我有一个2d矩阵,对应于时间(列)和高度(行)。我设法让它使用imshow进行绘图就好了(x轴上的时间和y轴上的高度),但是我将绘制一些天,其中一些将不会有24小时的数据。对于数据少于24小时的日子,我仍然希望它们在24小时时间轴上绘制,数据从x轴的起始时间开始绘制。

我已经尝试在pcolormesh上绘制这个并没有解决问题,并且还绘制了一个顶部的plt.plot,其中所有时间值和nan的高度值都是。

我还尝试将范围更改为时基,基于24 /(时间步长的差异),但这也没有影响。下面是我正在使用的代码以及显示我的数据格式的示例数据集;

time = [0.01649999991059303, 0.02584999985992908]
rdata = [-600.020751953125, -570.04150390625, -540.062255859375, -510.0830078125, -480.1037902832031, -450.1245422363281, -420.1452941894531, -390.1660461425781, -360.1867980957031, -330.2075500488281]
intensity = [[-37.32464981079102, -38.3233528137207], [-37.70231628417969, -38.05134201049805], [-38.27889251708984, -38.82979583740234], [-28.01022720336914, -27.68825912475586], [-8.408446311950684, -8.440451622009277], [-8.749446868896484, -8.750232696533203], [-9.431790351867676, -9.41820240020752], [-10.09048461914062, -10.23848724365234], [-10.84317588806152, -10.84869194030762], [-11.61933135986328, -11.67543029785156]]

t_start = time[0]
t_end = time[-1]
r_start = rdata[0]
r_end = rdata[-1]

fig = plt.figure(figsize=[8,5])
X,Y = meshgrid(time,rdata)
#plt.pcolormesh(X,Y, intensity, norm=None)
plt.imshow(intensity,aspect='auto',origin='lower',extent=[t_start,t_end,r_start,r_end])
plt.colorbar()
plt.show()

非常感谢任何帮助!

1 个答案:

答案 0 :(得分:0)

你不能简单地改变x轴上显示的X值范围吗?

plt.xlim([0,0.035])

enter image description here