我尝试对matplotlib使用自定义色彩映射表,但得到错误ValueError: Invalid RGBA argument: [(0.12156862745098039, 0.4666666666666667, 0.7058823529411765),...
令人恼火的是,它适用于条形图,但不适用于折线图。
我的绝对最小示例:
plt.bar(range(10), range(10), color=tableau20)

我的失败示例(实际示例为更多行):
plt.plot(np.linspace(0, 10), color=tableau20)
我的色彩映射表如下:
tableau20 = [(0.12156862745098039, 0.4666666666666667, 0.7058823529411765),
(0.6823529411764706, 0.7803921568627451, 0.9098039215686274),
(1.0, 0.4980392156862745, 0.054901960784313725),
(1.0, 0.7333333333333333, 0.47058823529411764),
(0.17254901960784313, 0.6274509803921569, 0.17254901960784313),
(0.596078431372549, 0.8745098039215686, 0.5411764705882353),
(0.8392156862745098, 0.15294117647058825, 0.1568627450980392),
(1.0, 0.596078431372549, 0.5882352941176471),
(0.5803921568627451, 0.403921568627451, 0.7411764705882353),
(0.7725490196078432, 0.6901960784313725, 0.8352941176470589),
(0.5490196078431373, 0.33725490196078434, 0.29411764705882354),
(0.7686274509803922, 0.611764705882353, 0.5803921568627451),
(0.8901960784313725, 0.4666666666666667, 0.7607843137254902),
(0.9686274509803922, 0.7137254901960784, 0.8235294117647058),
(0.4980392156862745, 0.4980392156862745, 0.4980392156862745),
(0.7803921568627451, 0.7803921568627451, 0.7803921568627451),
(0.7372549019607844, 0.7411764705882353, 0.13333333333333333),
(0.8588235294117647, 0.8588235294117647, 0.5529411764705883),
(0.09019607843137255, 0.7450980392156863, 0.8117647058823529),
(0.6196078431372549, 0.8549019607843137, 0.8980392156862745)]发布于 2021-05-03 17:47:01
与pyplot.bar不同,plot不接受color的颜色列表,因此您必须为每一行决定它将是哪种颜色。下面的示例使用您的颜色编号6:
plt.plot(np.linspace(0, 10), color=tableau20[6])输出:

https://stackoverflow.com/questions/67366563
复制相似问题