IPython: Как показать один и тот же сюжет в разных ячейках?

Я все еще новичок в IPython Notebooks, Jupyter и Python в целом.

Я создаю точечный график в блокноте Jupyter, используя следующий код:

import numpy as np
import matplotlib.pyplot as plt

n = 1024
X = np.random.normal(0, 1, n)
Y = np.random.normal(0, 1, n)
plt.axes([0.025, 0.025, 0.95, 0.95])
plt.scatter(X, Y, s=50)

plt.show()

У меня вопрос, как я могу получить ссылку на объект графика, чтобы потом использовать его в другой ячейке в блокноте? Кроме того, мне может понадобиться изменить сюжет, прежде чем показывать его снова.

Также у меня есть%matplotlib inline в верхней части моей записной книжки.

Вот некоторая информация о моей среде:

Python: 3.5.2 64 бит [MSC v.1900 64 бит (AMD64)]IPython: 4.2.0NumPy: 1.11.1SciPy: 0.17.1Matplotlib: 1.5.1SymPy: 1,0ОПЕРАЦИОННЫЕ СИСТЕМЫ: Windows 7 6.1.7601 SP1
 Liang02 янв. 2019 г., 20:18
Другой обходной путь - использовать интерактивный бэкэнд:%matplotlib notebook, Новая команда построения графика обновит исходный холст. Но я считаю, что это все еще не совсем то, что задумано.
 Liang02 янв. 2019 г., 20:05
Извините, что откопал этот вопрос. Мой обходной путь должен позвонитьfig.savefig в новой ячейке для сохранения в файл изображения и открытия изображения в средстве просмотра (например, EyeOfGnome), которое автоматически обновляется, чтобы показать текущую копию. Я до сих пор не знаю, как показать фигуру в новой ячейке ноутбука. Я думаю, что это может быть как-то связано с внутренностями Jupyter, особенно%matplotlib inline директивы. Может быть, это будет работать в какой-то бэкэнд.

Ответы на вопрос(1)

Попробуйте объектно-ориентированный интерфейс matplotlib -matplotlib.figure; при необходимости вы можете использовать ссылку на созданный объект Figure.

Создать объект фигуры -fig = plt.figure()Добавить оси к нему -ax = fig.add_axes([0.025, 0.025, 0.95, 0.95])Участок на созданной оси -ax.plot(X, Y)
 mbadawi2304 авг. 2016 г., 19:48
Если я пойду этим путем, я буду создаватьscatter сюжет каждый раз, когда я звонюax.scatter(), Тем не менее, это не сработало, как ожидалось в моей записной книжке.

Ваш ответ на вопрос