Matplotlib 图例颜色不同于绘图颜色 - 错误或错误?
Matplotlib legend colors differ from plot colors - bug or error?
我用误差线绘制数据并想在图例中标记它们。但是,图例中的颜色与图中的颜色不匹配。
玩具示例:
import matplotlib.pyplot as plt
plt.figure()
plt.plot(np.arange(50),label='data')
plt.errorbar(np.arange(50),np.arange(50),yerr=np.arange(50),label='errors')
plt.legend()
这种行为是错误还是我做错了什么?
谢谢!
我正在使用 python 2.7 和 jupyter lab
plot
有一行,errorbar
有一行。一个隐藏另一个。
您可以将误差条的 linestyle
设置为 "None"
。
import numpy as np
import matplotlib.pyplot as plt
plt.figure()
plt.plot(np.arange(50),label='data')
plt.errorbar(np.arange(50),np.arange(50),yerr=np.arange(50),ls="None",
label='errors')
plt.legend()
plt.show()
您也可以将情节的zorder
设置为更大的数字,让它出现在前面。
您可能还认为 plt.errorbar()
有两个颜色参数:
import numpy as np
import matplotlib.pyplot as plt
plt.figure()
plt.plot(np.arange(50),color='blue',label='data')
plt.errorbar(np.arange(0,50,2),np.arange(0,50,2),yerr=np.arange(0,50,2),color='blue',ecolor='red',label='errors')
plt.legend()
plt.show()
我用误差线绘制数据并想在图例中标记它们。但是,图例中的颜色与图中的颜色不匹配。
玩具示例:
import matplotlib.pyplot as plt
plt.figure()
plt.plot(np.arange(50),label='data')
plt.errorbar(np.arange(50),np.arange(50),yerr=np.arange(50),label='errors')
plt.legend()
这种行为是错误还是我做错了什么?
谢谢!
我正在使用 python 2.7 和 jupyter lab
plot
有一行,errorbar
有一行。一个隐藏另一个。
您可以将误差条的 linestyle
设置为 "None"
。
import numpy as np
import matplotlib.pyplot as plt
plt.figure()
plt.plot(np.arange(50),label='data')
plt.errorbar(np.arange(50),np.arange(50),yerr=np.arange(50),ls="None",
label='errors')
plt.legend()
plt.show()
您也可以将情节的zorder
设置为更大的数字,让它出现在前面。
您可能还认为 plt.errorbar()
有两个颜色参数:
import numpy as np
import matplotlib.pyplot as plt
plt.figure()
plt.plot(np.arange(50),color='blue',label='data')
plt.errorbar(np.arange(0,50,2),np.arange(0,50,2),yerr=np.arange(0,50,2),color='blue',ecolor='red',label='errors')
plt.legend()
plt.show()