簡體   English   中英

Matplotlib errorbar 按 plot 中的一個因子縮放

[英]Matplotlib errorbar scaled by a factor in plot

我正在繪制名為 test.csv 的 CSV 文件中的數據,該文件的值如下:

X                      Y            Yerrmin              Yerrmax
13.629119553139 0.13237415706937    0.115879894547257   0.14748971609137
55.3872849395824    0.14385506424916    0.13237415706937    0.153752686711682
208.442201941724    0.144454558978827   0.129650059586552   0.158954011478447
544.589674426085    0.151216201294351   0.13515549098632    0.168483298334671
968.990798410664    0.149341335862913   0.135718731529535   0.164331292710806
1305.01533678836    0.146268074690858   0.13073290613871    0.162970154348788
1596.62602210143    0.14748971609137    0.13292580681435    0.165016119097793

在我的代碼中,我有:

testK = np.genfromtxt("test.csv", delimiter=",", names=["X", "Y", "Yerrmin", "Yerrmax"])
testK_yerr=[testK['Yerrmin'], testK['Yerrmax']]
plt.errorbar(testK['X'], testK['Y'], yerr=testK_yerr, fmt='sk')
plt.savefig("test_plot.pdf")

這給出了 plot: 帶誤差線的圖

我找不到錯誤欄按乘法因子縮放的問題

您的 Yerrmin 值應該小於您希望誤差線向下延伸到的數據點。 因此,由於您的第一個 Y 點是 0.13,Y 誤差將向下擴展到 0.13-0.12 = 0.01,這就是它所在的位置。 如果 Yerrmin 實際上是最小 Y 值,即您希望誤差帶從 0.115 擴展到 0.147,那么您需要制作新值以傳遞給 function,例如

testK_yerr=[testk['Y']-testK['Yerrmin'], testK['Yerrmax']-testK['Y']]

並通過那些

暫無
暫無

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

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