2015-06-05 22 views
0

我使用以下代碼繪製三條曲線(1.平均值,2.不確定性/錯誤和3.測量數據),但是,我可以所有三條曲線都沒有想要的傳說。我可以分別將「平均」和「測量數據」的傳說分別標爲藍色實線和紅色圓圈,但我無法將藍色補丁作爲「不確定性」的傳說。我使用Spyder使用Python 2.7版本。Python:無法獲取圖例的錯誤圖(fill_between)

qErr = np.std(qArray, axis=1) 
h1 = plt.semilogy(T, qArray[:, 2], 'b-', label = 'Mean') 
h2 = plt.fill_between(T, qArray[:, 2] - qErr, qArray[:, 2] + qErr, facecolor='b', alpha = 0.2) 
plt.hold 
h3 = plt.semilogy(T, ORate[idxt0:], 'ro') 
plt.legend([h1, h2, h3], ['Mean', 'Uncertainty', 'Measured Data']) 

回答

0

我得到了它使用@kwarrick從here破解:

qErr = np.std(qArray, axis=1) 
h1 = plt.semilogy(T, qArray[:, 2], 'b-', label = 'Mean') 
h2 = plt.fill_between(T, qArray[:, 2] - qErr, qArray[:, 2] + qErr, facecolor='b', alpha = 0.2) 
h3 = plt.plot([], [], color='blue', linewidth=10) 
h4 = plt.semilogy(T, ORate[idxt0:], 'ro') 
plt.legend(['Mean', 'Uncertainty', 'Measured Data']) 

PS:不過,我不明白爲什麼,如果我所對應的傳說他們的陰謀把手我不能得到的結果像這樣:

plt.legend([h1, h3, h4], ['Mean', 'Uncertainty', 'Measured Data']) 
相關問題