Несколько ячеек интерактивного графика в блокноте JupyterPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Несколько ячеек интерактивного графика в блокноте Jupyter

Сообщение Anonymous »

Задание: Я провожу анализ, для которого нужно несколько графиков. Первый из них должен иметь возможность изменения размера и масштабирования. На основании того, что я вижу в этом, я делаю другие сюжеты в новых ячейках. Эти графики не обязательно должны быть интерактивными. Важно:
1- иметь возможность постоянно видеть первый график и работать с ним,
2- визуализировать остальные графики в их ячейках и
3- уметь запустите «перезагрузить и запустить все»
Я попробовал %matplotlib nbagg для первого графика. Таким образом, первый график действительно будет интерактивным, когда я запускаю код ячейку за ячейкой. Однако при запуске следующих ячеек графика другие графики будут отображаться в первой ячейке, перезаписывая ее, и графики не могут быть просмотрены одновременно. Действительно, «перезапустить и запустить все» отобразит только последний график.
Я пытался остановить интерактивное отображение после первой ячейки, используя встроенный %matplotlib, %matplotlib auto или plt.ioff(), но ничего из этого не помогло.
Интересно, может ли кто-нибудь мне помочь.
Заранее спасибо< /p>
Вот минимальный воспроизводимый пример.
Первая ячейка блокнота считывает изображение и производит преобразование Фурье (футы), которое я хочу иметь. постоянно увеличивать масштаб
%matplotlib nbagg
from skimage import data, io
from skimage.draw import disk
import numpy as np
import matplotlib.pyplot as plt
img = data.checkerboard()
ft = np.abs(np.fft.fftshift(np.fft.fft2(np.fft.ifftshift(img))))
ft[ft.shape[0]//2,ft.shape[1]//2]=np.mean(ft)
plt.imshow(ft)

Вторая ячейка помещает маску на один из пиков в футах и ​​отображает выходное изображение. Это изображение должно отображаться в отдельной ячейке и не должно перезаписывать предыдущее изображение. Однако он не обязательно должен быть интерактивным
%matplotlib inline
row, col = 96,104
rr, cc = disk((row, col), 7)
mask=np.zeros_like(img)
mask[rr, cc] = 1
plt.imshow(ft*mask)


Подробнее здесь: https://stackoverflow.com/questions/790 ... r-notwbook
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»