这个问题解释了如何在x轴上使用datetime
对象:Dates in the xaxis for a matplotlib plot with imshow,并且效果很好。
但是我有对应于1分钟或3分钟的不同时间间隔的测量数据,并且在不同持续时间的数据中也有间隙- 10分钟或1小时或介于两者之间的任何时间。数据在一个带有datetime键和numpy数组值的字典中。有些键相隔1分钟,有些相隔3分钟。数据中也有> 3分钟的间隙,一般不超过10分钟。
如果我把它标为:ax.imshow(arr, extent = [x1, x2, y1, y2], aspect='auto')
其中,x1和x2是开始和结束时间,y1和y2是垂直维度,而numpy是从上面提到的字典值生成的2d numpy数组,数据将均匀地分布在时间轴上,我希望间隙可见,我希望根据其时间分辨率和测量时间绘制数据。
我想到将nans
写入数组来填补空白,但我还必须复制3分钟时间步长的数据来填补“空白”,因为大部分数据每分钟都可用。
我正在寻找一个更好,更优雅的选择。当然,如果有其他方法,我不必使用imshow()
。
1条答案
按热度按时间4si2a6ki1#
我没有找到一个使用matplotlib解决上述问题的方法。但plotly提供了一个解决方案,因为Heatmap对象也允许将时间作为参数:
字符串