我有一个pivot表,它是根据以下命令创建的:Color mapping of data on a date vs time plot,并用imshow()打印它。我想使用pivot表的索引和列作为yticks和xticks。数据透视表中的列是日期,索引是一天中的时间。你知道吗
data = pd.DataFrame()
data['Date']=Tgrad_GFAVD_3m2mRot.index.date
data['Time']=Tgrad_GFAVD_3m2mRot.index.strftime("%H")
data['Tgrad']=Tgrad_GFAVD_3m2mRot.values
C = data.pivot(index='Time', columns='Date', values='Tgrad')
print(C.head()):
Date 2016-08-01 2016-08-02 2016-08-03 2016-08-04 2016-08-05 2016-08-06 \
Time
00 -0.841203 -0.541871 -0.042984 -0.867929 -0.790869 -0.940757
01 -0.629176 -0.520935 -0.194655 -0.866815 -0.794878 -0.910690
02 -0.623608 -0.268820 -0.255457 -0.859688 -0.824276 -0.913808
03 -0.615145 -0.008241 -0.463920 -0.909354 -0.811136 -0.878619
04 -0.726949 -0.169488 -0.529621 -0.897773 -0.833408 -0.825612
我用
fig, ax = plt.subplots(figsize = (16,9))
plt = ax.imshow(C,aspect = 'auto', extent=[0,len(data["Date"]),0,23], origin = "lower")
我试过几件事,但都没用。目前,我的xticks的范围在0到6552之间,这是C.columns对象的长度,由imshow()中的extent参数设置
我希望每个月的第一天都有xticks,但不是按索引编号,而是以“2016-08-01”格式作为日期标记。你知道吗
我确信这只是一件小事,在过去的一个小时里阻止了我,但现在我放弃了。你知道如何相应地设置XTICK吗?你知道吗
我自己在尝试了一件事之后找到了解决办法。。我在“data”数据框中创建了另一列,其中包含datenum条目而不是dates
然后将绘图线更改为:
因此,extent参数的更改为绘图提供了datenum值,而不是date列的索引。 然后,以下几行开始工作:
最好的, 维罗尼
相关问题 更多 >
编程相关推荐