我想为沿x轴的每个点使用不同颜色的误差线图。错误条形图本身很好,但是当我尝试使用色彩映射时会炸弹,所以我必须做错了。这里是什么,我试图做一个人为的例子:matplotlib errorbar plot - 使用自定义色彩地图
import matplotlib.pyplot as plt
colors = ["b","g","c","m","y","k","r","g","c","m","y","k",
"b","g","c","m","y","k","r","g","c","m","y","k"]
xlabels = ['A','B','8','14']
xval = [0, 1, 2, 3]
yval = [0, 1, 4, 9]
yerr = [0.5, 0.4, 0.6, 0.9]
cmap = dict(zip(xval,colors))
现在我运行这个后,我可以去:
plt.errorbar(xval, yval, yerr=yerr, color='b')
,这给了我如下所示(图表也就是说,它工作但是当我尝试这样做:
plt.errorbar(xval, yval, yerr=yerr, color=cmap)
它给了我一个错误,如“ValueError异常:to_rgba:Inval id rgba arg“{0:'b',1:'g',2:'c',3:'m'}”
是否可以做我想做的事情?我试图做的是让错误栏图表中的每个4点具有不同的颜色。我不需要真正连接点的线。感谢任何帮助/建议。
那如果你改变了每一点的颜色的循环? – nicoguaro 2014-10-10 03:06:23
确实我可以这样做,我确实考虑过,但希望能够将其完全传递给matplotlib,并让matplotlib使其工作。我不知道......也许我会被pythonic aesthics带走,毕竟应该做循环;〜)。如果你看看我在这个例子中做了什么,你会说整个事情都是笨重的,但它在实际的程序中做得更加优雅。 – 2014-10-10 17:25:15
好吧,我会写一个答案,然后... – nicoguaro 2014-10-10 17:53:13