Составьте несколько одновременных анимированных сюжетов с помощью matplotlib - PullRequest
0 голосов
/ 28 февраля 2019

Моя цель состоит в том, чтобы рисовать анимированные фигуры Лиссажу, одновременно анимированные с помощью модуля matplotlib animation , однако я не могу контролировать все вспомогательные сюжеты. Я хотел использовать как можно меньше кода и поэтому повторялся в некоторыхдля петель, чтобы построить столько фигур, сколько я хочу, в очень аккуратном и быстром.Вот мой код:

import numpy as np
from matplotlib import pyplot as plt
from matplotlib import animation as an

fig, ax = plt.subplots(nrows=3, ncols=3)
lines = np.array([[i.plot([], []) for i in ax[j]] for j in range(len(ax))])

for i in range(len(lines)):
    for j in range(len(lines[i])):
        axnow = ax[i][j]
        axnow.set_xlim(-1, 1)
        axnow.set_ylim(-1, 1)

xdata = [[[] for i in range(3)] for j in range(3)]
ydata = [[[] for i in range(3)] for j in range(3)]


def animate(frame):
    w = 1
    for i in range(len(lines)):
        for j in range(len(lines[i])):
            xdata[i][j].append(np.cos(w * frame))
            ydata[i][j].append(np.sin(1 * frame))
            line = lines[i][j][0]
            line.set_data(xdata[i][j], ydata[i][j])
            w += 1

    return lines


an.FuncAnimation(fig, animate, blit=True, frames=np.linspace(0, 2 * np.pi, 1000), repeat=False,
interval=20)


plt.tight_layout()
plt.show()

Однако на самом деле ничего не отображается, и я не знаю, где моя ошибка.Любая помощь приветствуется.

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