Использование set_data для matplotlib с несколькими строками данных - PullRequest
0 голосов
/ 18 марта 2020

Я хочу простую реализацию динамического c plot и обнаружил, что plt.set_data, похоже, работает с использованием plt.draw() и plt.pause(). Однако я не могу заставить его работать, когда у меня есть несколько строк данных, которые я хочу отобразить как отдельную линию (я не хочу использовать for-l oop). Код Se и результат ниже:

import numpy as np
import matplotlib.pyplot as plt 

x = np.array([[1,2,3],
              [4,5,6],
              [8,9,10]]).T

y = np.array([[3,3,3],
              [5,7,5],
              [3,1,3]]).T

plt.plot(x, y, 'lightgreen', linewidth = 5, label = 'Wanted dynamic plot')


dynamic_t, = plt.plot([], [], 'b--', label = 'Transposed data')
dynamic_t.set_data(x.T,y.T)

dynamic, = plt.plot([], [], 'r--', label = 'Not transposed data')
dynamic.set_data(x,y)

plt.axis([0,10,0,10])
plt.legend()
plt.show()

Со следующим результирующим графиком: enter image description here

Если я транспонирую данные (синяя линия), я получаю правильную последовательность однако я получаю их как одну непрерывную линию, но я хочу, чтобы их было три отдельных.

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...