Matplotlib. Изменения цвета кривой графика реального времени

Есть график реального времени:

import pandas as pd
import matplotlib.pyplot as plt
import as np
pause=3 #Пауза между отрисовками графика
plt.ion()
plt.style.use('ggplot')
ncol=256 #Количество цветов в градации
colors=plt.cm.jet(np.linspace(0,1,ncol)#Диапазон цветов
while True:
      df=pd.read_csv('/home/gluk/realtime.csv')
      df1=df.tail(500) #Берем последние значения
      east=df1['x']
      nord=df1['y']
      time=df1['date'] # Еще есть дата в формате 2019:03:31:19:14
      for i in range(ncol): #Пытаемся менять цвета
               plt.plot(east,nord, 'g-', linewight=1.5,markersize=4, color=colors[i])
               plt.pause(pause)

Переменная df дописывается с определенным интервалом. Переменные east и nord случайные величины. Задача сделать так, чтобы кривая графика была раскрашена диапазоном цветов (иными словами в цвета радуги). То есть, начальные значение имели бы например, гамму синего, конечные значения гамму красного. Пример кода просто красит в один цвет. Есть ли способ сделать это с помощью matplotlib? Если нет, что из модулей стоит посмотреть. Спасибо!


Ответы (1 шт):

Автор решения: passant

Если принципиально именно plot-график, то:

for i in range(ncol-1): #Пытаемся менять цвета
    plt.plot(east[i:i+2],nord[i:i+2],lw=1.5,markersize=4, c=col[i])

Результат: введите сюда описание изображения

Со scatter-графиком, конечно, все можно сделать проще, без внутреннего цикла:

plt.scatter(east,nord, marker='.', c=col)

На 500 точках разница малозаметна.

→ Ссылка