我想用误差条绘制一个数据集,每个点都有不同的颜色。
我尝试了以下方法(如果我使用plt.scatter,它会起作用)
colors = np.array(['blue','red','orange','orange','green','green']) plt.figure() plt.errorbar(position,cd,yerr=error,c=colors) plt.show()
但这段代码给了我错误:“ValueError:array(['blue','red','orange','orange','green','green'],dtype='<U6')不是有效的颜色值”
有人知道如何解决这个问题吗?
非常感谢!
如果你只想给不同的颜色 errorbar 行,而不是使用 color (c) 参数使用 ecolor 论点
errorbar
color
ecolor
ecolorcolor,默认值:无 错误条线的颜色。如果“无”,请使用连接标记的线的颜色。
ecolorcolor,默认值:无
错误条线的颜色。如果“无”,请使用连接标记的线的颜色。
colors = np.array(['blue', 'red', 'orange', 'orange', 'green', 'green']) plt.figure() plt.errorbar(position, cd, yerr=error, ecolor=colors) plt.show()
[![在此处输入图像描述][2]][2]
如果您还想更改点和错误线的颜色,那么您可以使用以下代码
plt.figure() for i in range(len(position)): plt.errorbar(position[i], cd[i], yerr=error[i], ecolor=colors[i], fmt="o", capsize=5) plt.show()