Почему оси не отображаются в этой анимации? - PullRequest
0 голосов
/ 11 мая 2019

В этой анимации не отображаются оси, я не вижу чего-то не хватает в моем коде.Я не знаю, делает ли анимация это.Я попробовал два метода без получения решения.Так что же можно сделать, чтобы показать оси?

Спасибо за помощь.

import numpy as np
import matplotlib.pyplot as plt
from matplotlib.animation import FuncAnimation


fig = plt.figure()
ax = fig.add_axes([0, 0, 1, 1])


n_drops = 100

rain_drops = np.zeros(n_drops, dtype=[('position', float, 2),
                                      ('size',     float, 1),
                                      ('growth',   float, 1),
                                      ('color',    float, 4)])



scat = ax.scatter(rain_drops['position'][:, 0], rain_drops['position'][:, 1], s=rain_drops['size'], lw=0.5, edgecolors=rain_drops['color'], facecolors='midnightblue',marker='s')



def update(frame_number):

    current_index = frame_number % n_drops

    rain_drops['size'] += rain_drops['growth']

    rain_drops['position'][current_index] = np.random.uniform(0, 0, 1)

    rain_drops['size'][current_index] = 5

    rain_drops['color'][current_index] = (0.05, 0.05, 0.09, 1)

    rain_drops['growth'][current_index] = 200 #np.random.uniform(50, 200)

    scat.set_edgecolors(rain_drops['color'])

    scat.set_sizes(rain_drops['size'])

    scat.set_offsets(rain_drops['position'])


animation = FuncAnimation(fig, update, interval=10)

plt.show()

1 Ответ

0 голосов
/ 11 мая 2019

Проблема связана с настройкой вашей фигуры.Одним из решений является замена:

ax = fig.add_axes([0, 0, 1, 1])

на:

ax = fig.add_axes([0.05, 0.05, 0.85, 0.85])

или стандарт:

ax = fig.add_subplot(111)
ax.set_ylim(-1,1)

Это дает мне нечто похожее на это (снимок экрана)где-то в середине анимации):

enter image description here

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