在Python中,我有一個二維數組,如:結合imshow情節與普通情節
1.3 5.7 3.2 5.6 2.3 9.5 1.1 4.1 5.2
然後我用 'imshow' 得到我所需要的 - 我基本上有一個情節,其中x軸是: (列)0(列)1(列)2 ....
和y軸是: 。 。 (行)2 (行)1 (行)0
,然後將實際值(5.6或2.3或任何)通過顏色,這正是我想表示。
但後來,而不是x軸只是第0列第1列和第2列等,我希望x軸顯示與列0列1和列2等相對應的日期。此信息是存儲在不同的列表中,比如說「date_info []」。
因此,我想讓imshow的x值與date_info []列表的值相對應,而不是數字2,例如我希望date_info [2]開啓x軸。
現在有了這個論壇的幫助,我是能夠做到這一點使用:
plt.xticks(mjdaxis,[int(np.floor(data_info[i])) for i in mjdaxis])
這是足夠了一段時間,但我只是改變了x軸的標籤,在這裏吧?而不是正在繪製的內容。現在,當我試圖在我的原始頂部放置另一個繪圖(只是一條規則曲線)時,x軸縮放會變得混亂,並且我的列再次聚集爲(1,2,3 ...),而是的相應date_info值(55500,55530,55574 ...)
如果任何人都能理解我所說的話,那就太好了!
僅供參考,這裏是我現在想要的代碼:
fig = plt.figure()
ax1 = fig.add_subplot(111)
mjdaxis=np.linspace(0,date_info[0]-1,20).astype('int')
ax1.set_xticks(mjdaxis,[int(np.floor(date_info[i])) for i in mjdaxis])
ax1.imshow(residuals, aspect="auto")
ax2 = ax1.twinx()
ax2.plot(pdot[8:,0],pdot[8:,1])
plt.show()
不幸的是,這似乎給了我同樣的結果。儘管如此,我會檢查出「持有」。謝謝。 – user1551817