Цифровая рамка для ноутбука Jupyter неожиданно меняет размер - PullRequest
0 голосов
/ 20 сентября 2018

Я пытаюсь, чтобы блокнот jupyter показывал последовательность графиков в цикле for.Код работает, но по какой-то причине размер рисунка меняется после выполнения цикла for.Вот набор минимального кода, чтобы проиллюстрировать это (в блокноте jupyter)

import numpy as np
import matplotlib
import matplotlib.pyplot as plt


%matplotlib notebook

for i in range(10):
    plt.gca().scatter(np.random.rand(10),
                      np.random.rand(10))
    plt.gcf().canvas.draw()
    plt.gcf().canvas.flush_events()
    plt.pause(0.5)

Прилагается рисунок, иллюстрирующий проблему.Эта проблема сводила меня с ума, и изменение полей или использование sharp_layouts () не помогают.Похоже, это связано с тем, как отображается объект FigureFrame.gif Спасибо за помощь!

1 Ответ

0 голосов
/ 20 сентября 2018

В игру вступает преимущество matplotlib.animation.Перед началом анимации убедитесь, что фигура полностью прорисована.

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


def animate(i):
    plt.gca().scatter(np.random.rand(10),
                      np.random.rand(10))

ani = FuncAnimation(plt.gcf(), animate, frames=10, interval=500)
plt.show()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...