Як встановити розмір фігури matplotlib за замовчуванням у зошиті ipython?


104

Я використовую "$ ipython notebook --pylab inline", щоб запустити ноутбук ipython. Розмір фігури matplotlib дисплея для мене занадто великий, і я мушу налаштувати його вручну. Як встановити розмір за замовчуванням для фігури, відображеної у комірці?

Відповіді:


123

Я вважаю, що наступна робота у версії 0.11 і вище. Щоб перевірити версію:

$ ipython --version

Можливо, варто додати цю інформацію до свого питання.

Рішення:

Вам потрібно знайти файл ipython_notebook_config.py. Залежно від вашого процесу встановлення це має бути десь схожим

.config/ipython/profile_default/ipython_notebook_config.py

де .configзнаходиться у вашому домашньому довіднику.

Після того як ви знайдете цей файл, знайдіть наступні рядки

# Subset of matplotlib rcParams that should be different for the inline backend.
# c.InlineBackend.rc = {'font.size': 10, 'figure.figsize': (6.0, 4.0), 'figure.facecolor': 'white', 'savefig.dpi': 72, 'figure.subplot.bottom': 0.125, 'figure.edgecolor': 'white'}

Відкиньте цей рядок c.InlineBack...і визначте за замовчуванням малюнок у другому словниковому записі.

Зауважте, що це можна зробити в сценарії python (а отже, і в інтерактивному режимі в IPython), використовуючи

pylab.rcParams['figure.figsize'] = (10.0, 8.0)

6
У ipython 2.0 конфігураційний файл знаходиться у .ipython / profile_default / ipython_notebook_config.py
Фабіан Педрегоса

1
У старих версіях iPython ipython_notebook_config.pyне міститься рядок для налаштування вбудованого сервера. Оскільки файл конфігурації не оновлюється автоматично, коли ви оновлюєте iPython (принаймні в Windows), вам потрібно видалити його та створити новий конфігураційний файл, виконавши, ipython profile createяк запропоновано нижче @anmol.
Поггі

1
Ви можете знайти існуючі профілі за допомогою ipython profile locate.
j08lue

22
І якщо ви використовуєте matplotlib замість pyplot, інтерактивна команда matplotlib.rcParams['figure.figsize'] = (10.0, 8.0)
Лука

Я використовую jupyter 4.1.0-6 з python-ipykernel 4.5.2-3 та ipython 5.3.0-1 (усі вони в Arch), і я не маю жодного файлу ipython_notebook_config.pyпід моїм ~. Будь-яка ідея, як можуть змінитися речі в останніх версіях?
Пастафаріан

111

Працював сподобався шарм для мене:

matplotlib.rcParams['figure.figsize'] = (20.0, 10.0)

17
Я не знаю, наскільки це ідіоматично, але я підкоригував це для свого ноутбука з юпітером, щоб він працював:import matplotlib.pyplot as plt %matplotlib inline plt.rcParams['figure.figsize'] = (20.0, 10.0)
brycemcd

8
Є такожplt.rc('figure', figsize=(20.0, 10.0))
joelostblom

2
Досить дивно, але після деякого оновлення мені потрібно розділити %matplotlib inlineі plt.rc(...)по різних клітинках, щоб останні працювали. Те саме стосуєтьсяmatplotlib.rcParams[...]
uranix

3
Також переконайтеся, що ця лінія після%matplotlib inline
Рішабх Аграхарі

17

Якщо у вас немає цього ipython_notebook_config.py-файлу, його можна створити, дотримуючись readme та ввівши

ipython profile create

16

Просто для повноти це також працює

from IPython.core.pylabtools import figsize
figsize(14, 7)

Це обгортка навколо rcParamsрозчину


Важливо для великого ноутбука з кількома сюжетами, і працює як шарм
CATALUNA84

8

В iPython 3.0.0 вбудований сервер потрібно вбудувати ipython_kernel_config.py. Вам потрібно вручну додати c.InlineBackend.rcрядок ... (як згадується в Грезі ). Це вплине як на вбудований сервер в консолі Qt, так і на ноутбук.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.