Я использую IPython --pylab=inline
и иногда мне хотелось бы быстро переключиться на интерактивный масштабируемый графический интерфейс matplotlib для просмотра графиков (тот, который появляется, когда вы что-то рисуете в терминальной консоли Python). Как я мог это сделать? Желательно не выходить из ноутбука и не перезагружать его.
Проблема со встроенными графиками в ноутбуке IPy заключается в том, что они имеют ограниченное разрешение, и я не могу увеличить их, чтобы увидеть некоторые более мелкие части. С помощью графического интерфейса maptlotlib, который начинается с терминала, я могу выбрать прямоугольник графика, который я хочу увеличить, и оси скорректировать соответственно. Я пробовал экспериментировать с
from matplotlib import interactive
interactive(True)
и
interactive(False)
но это ничего не дало. В сети я тоже не нашла намеков.
источник
%matplotlib notebook
работаетОтветы:
Согласно документации , вы должны иметь возможность переключаться вперед и назад следующим образом:
и появится обычное окно графика (может потребоваться перезагрузка ноутбука).
Надеюсь, это поможет.
источник
%pylab qt
. Не работает в OS X. Может, в Ubuntu поможет.Если все, что вы хотите сделать, это переключиться со встроенных графиков на интерактивные и обратно (чтобы вы могли панорамировать / масштабировать), лучше использовать% matplotlib magic.
и обратно в html
% pylab magic импортирует множество других вещей и может даже привести к конфликту. Делает "из импорта * pylab".
Вы также можете использовать новый бэкэнд для записных книжек (добавлен в matplotlib 1.4):
Если вы хотите, чтобы ваши графики были более интерактивными, вы можете взглянуть на mpld3 и боке . mpld3 отлично подходит, если у вас нет тонны точек данных (например, <5k +) и вы хотите использовать обычный синтаксис matplotlib, но с большей интерактивностью по сравнению с ноутбуком% matplotlib. Bokeh может обрабатывать множество данных, но вам нужно изучить его синтаксис, поскольку это отдельная библиотека.
Также вы можете проверить pivottablejs (pip install pivottablejs)
Каким бы крутым ни было интерактивное исследование данных, оно может полностью испортить воспроизводимость. Это случилось со мной, поэтому я стараюсь использовать его только на самом раннем этапе и переключаюсь на чистый встроенный matplotlib / seaborn, как только я нащупываю данные.
источник
Warning: Cannot change to a different GUI toolkit: notebook. Using qt instead.
для%matplotlib notebook
.ImportError: Failed to import any qt binding
для команды qt magicНачиная с matplotlib 1.4.0 теперь есть интерактивный сервер для использования в ноутбуке.
Существует несколько версий IPython, в которых этот псевдоним не зарегистрирован, откат:
Если это не сработает, обновите IPython.
Чтобы поиграть с этим, перейдите на tmpnb.org
и вставить
в ячейку кода (или просто измените существующую демонстрационную записную книжку Python)
источник
Лучшим решением вашей проблемы может быть библиотека Charts . Это позволяет вам использовать отличную библиотеку JavaScript Highcharts для создания красивых и интерактивных графиков. Highcharts использует HTML
svg
тег поэтому все ваши диаграммы на самом деле являются векторными изображениями.Некоторые особенности:
Отказ от ответственности: я разработчик библиотеки
источник
Я использую ipython в «jupyter QTConsole» от Anaconda по адресу www.continuum.io/downloads от 28.05.2011.
Вот пример переключения между отдельным окном и режимом встроенного графика с использованием магии ipython.
источник
%matplotlib
я получаю сообщение об ошибке, которое заканчивается наImportError: No module named 'PyQt4'
sudo apt-get install python-pyqt5
илиsudo apt-get install python-pyqt5
Перезапустите ядро и очистите вывод (если не начинаете с нового ноутбука), затем запустите
Для получения дополнительной информации перейдите к Построению с помощью matplotlib
источник
Ты можешь использовать
%matplotlib qt
Если вы получили сообщение об ошибке,
ImportError: Failed to import any qt binding
установите PyQt5 как:pip install PyQt5
и он сработает для меня.источник