[英]Matplotlib scatter plot dual y-axis
我試圖弄清楚如何在 matplotlib 中使用兩個不同的 y 軸值創建散點圖。 現在我有一個,需要在 y 上添加第二個索引列值。
points1 = plt.scatter(r3_load["TimeUTC"], r3_load["r3_load_MW"],
c=r3_load["r3_load_MW"], s=50, cmap="rainbow", alpha=1) #set style options
plt.rcParams['figure.figsize'] = [20,10]
#plt.colorbar(points)
plt.title("timeUTC vs Load")
#plt.xlim(0, 400)
#plt.ylim(0, 300)
plt.xlabel('timeUTC')
plt.ylabel('Load_MW')
cbar = plt.colorbar(points1)
cbar.set_label('Load')
所以第二個散點集應該是 TimeUTC vs index。 顏色不是主題;)在excel中y軸也是不同的站點,但沒關系。
感謝您的幫助! 謝謝,寶琳娜
在評論中的建議之后繼續。
matplotlib.pyplot
接口,就像您在原始代碼片段中使用.plt
所做的那樣matplotlib
的建議方法,尤其是當您需要更多自定義時,例如您的情況。 在您的代碼中, ax1
是一個Axes
實例。 在Axes
實例中,您可以使用Axes.plot
和Axes.scatter
方法繪制數據,這與您通過pyplot
界面所做的非常相似。 這意味着,您可以編寫Axes.scatter
調用而不是.plot
並使用與原始代碼中相同的參數:
fig, ax1 = plt.subplots()
ax2 = ax1.twinx()
ax1.scatter(r3_load["TimeUTC"], r3_load["r3_load_MW"],
c=r3_load["r3_load_MW"], s=50, cmap="rainbow", alpha=1)
ax2.plot(r3_dda249["TimeUTC"], r3_dda249.index, c='b', linestyle='-')
ax1.set_xlabel('TimeUTC')
ax1.set_ylabel('r3_load_MW', color='g')
ax2.set_ylabel('index', color='b')
plt.show()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.