Один из способов сделать это - построить каждый сегмент линии отдельно, используя цикл 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()