【问题标题】:different segment of a plot with different colors不同颜色的绘图的不同部分
【发布时间】:2019-10-25 20:17:35
【问题描述】:

我有一个要绘制的列表。对于列表中的每个元素,我都有相应的颜色。我想用颜色绘制列表。没有散​​点图。

value=[12,15,20] 
color_list=['red','red','blue']
plt.plot(value, color=color_list)

我希望有两个部分,第一个是红色的,第二个是蓝色的。
谢谢

【问题讨论】:

  • 为什么你有3种颜色但有2条线段?这些水平线也是 x 位置吗?

标签: python matplotlib colors


【解决方案1】:

执行此操作的一种方法是使用for 循环分别绘制每个线段并索引您要绘制的值。请注意,您的颜色对应于每个点而不是线段,因此我在i+1 处进行了索引,以便为您提供红色和蓝色段。

from matplotlib import pyplot as plt

value=[12,15,20]
color_list=['red','red','blue']

for i in range(0,(len(value)-1)):
    plt.plot(value[i:i+2], color=color_list[i+1])

plt.show()

由于您没有提供 x 值,因此此方法假定每行将从 0 变为 1。如果不是这种情况,则需要指定 x 值是什么并以相同的方式对它们进行索引。

from matplotlib import pyplot as plt

value=[12,15,20]
xs = [0,1,2]
color_list=['red','red','blue']

for i in range(0,(len(value)-1)):
    plt.plot(xs[i:i+2],value[i:i+2], color=color_list[i+1])

plt.show()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-06-13
    • 1970-01-01
    • 2022-11-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多