簡體   English   中英

如何調整我的 plt.axhline 位置?

[英]How can I adjust my plt.axhline position?

為什么我的 plt.axhline 會失真? 我希望這條水平線的 X 軸從 0.2 開始,到 0.8 結束。 如何設計? 附上我的代碼如下,謝謝

import matplotlib.pyplot as plt
import numpy as np
x=np.full((20,),3)
print(x)
y=2*x+1
print(y)
y1=y[0]
x1=x[0]
plt.axhline(y1,0.2, 0.8, color= 'r')
plt.axvline(x1, 0.2, 0.8, linestyle= '--')
plt.show()

軸線誤差

您指定兩條線的坐標 (x=3, y=7),這就是您的繪圖位於該坐標處的原因。 您可以更改坐標並向 xaxis 添加限制(使用plt.xlim )。 在 axhline 中,您首先指定坐標(在您的案例 7 中),然后它在情節方面走多遠(0.2 將達到整個情節的左側 20% 標記,0.8 -> 右側)。

這應該有效:

import matplotlib.pyplot as plt
import numpy as np
x=np.full((20,),3)
print(x)
y=2*x+1
print(y)
y1=y[0]
x1=x[0]
plt.xlim(0, 1)
plt.axhline(y1,0.2, 0.8, color= 'r')
plt.axvline(0.5, ymin=0.2, ymax=0.8, linestyle= '--')

plt.show()

輸出:

在此處輸入圖片說明

否則你可以做這樣的事情:

您將xlim設置為0,4 ,然后將線設置為到達圖的左側 5% (0.05*4=0.2) 並到達圖右側的 20% (0.2*4=0.08)。

import matplotlib.pyplot as plt
import numpy as np
x=np.full((20,),3)
print(x)
y=2*x+1
print(y)
y1=y[0]
x1=x[0]
plt.xlim(0, 4)
plt.axhline(y1,0.05, 0.2, color= 'r')
plt.axvline(x1, ymin=0.2, ymax=0.8, linestyle= '--')

plt.show()

輸出:

在此處輸入圖片說明

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM