相关疑难解决方法(0)

在Jupyter Notebook中%matplotlib内联后使用%matplotlib笔记本不起作用

我正在使用Jupyter Notebook绘制饼图数字.

在我的代码的第一个单元格中,我有一个魔术命令%matplotlib inline,在这个魔术命令后我运行我的代码,一切正常,我的图形呈现.

但在第二个单元格中,当我设置%matplotlib notebook交互式绘图时,我的图形在运行第二个单元格后将无法呈现.

我需要重新启动内核并%matplotlib notebook再次运行单元格,并且%matplotlib inline在此之前无法运行命令.

这里是我的代码,第一个单元格%matplotlib inline,这使得罚款:

import matplotlib.pyplot as plt

%matplotlib inline

labels = "No", "Yes"
sizes = [100, 50]

fig, ax = plt.subplots(figsize=(6, 6))

_, texts, autotexts = ax.pie(sizes, explode=explode, labels=labels, colors=colors, autopct='%1.1f%%',
             shadow=False, startangle=90)

ax.axis('equal')
Run Code Online (Sandbox Code Playgroud)

之后,我有第二个单元格具有相同的代码,只是%matplotlib inline改为%matplotlib notebook.在运行此单元格后,图形将不会呈现,我需要重新启动内核并再次运行此单元格.

为什么?

python matplotlib jupyter-notebook

19
推荐指数
2
解决办法
2万
查看次数

在jupyter笔记本中内联后端的matplotlib配置

我想学习如何使用jupyter笔记本中的内联后端配置matplotlib的默认值.具体来说,我想将默认的'figure.figsize'设置为[7.5,5.0]而不是默认的[6.0,4.0].我正在使用matplotlib 1.4.3在Mac上使用jupyter notebook 1.1.

在笔记本中,使用macosx后端,我的matplotlibrc文件显示在标准位置,figsize按照matplotlibrc中的指定设置:

In [1]: %matplotlib
Using matplotlib backend: MacOSX

In [2]: mpl.matplotlib_fname()
Out[2]: u'/Users/scott/.matplotlib/matplotlibrc'

In [3]: matplotlib.rcParams['figure.figsize']
Out[3]:[7.5, 5.0]
Run Code Online (Sandbox Code Playgroud)

但是,当我使用内联后端时,figsize设置不同:

In [1]: %matplotlib inline

In [2]: mpl.matplotlib_fname()
Out[2]: u'/Users/scott/.matplotlib/matplotlibrc'

In [3]: matplotlib.rcParams['figure.figsize']
Out[3]:[6.0, 4.0]
Run Code Online (Sandbox Code Playgroud)

在我的笔记本配置文件〜/ .jupyter/jupyter_notebook_config.py中,我还添加了该行

c.InlineBackend.rc = {'figure.figsize': (7.5, 5.0) }
Run Code Online (Sandbox Code Playgroud)

但这也没有效果.现在我被困在每个笔记本中添加这一行:

matplotlib.rcParams['figure.figsize']=[7.5, 5.0]
Run Code Online (Sandbox Code Playgroud)

有没有办法设置内联后端的默认值?

matplotlib jupyter-notebook

14
推荐指数
1
解决办法
7514
查看次数

标签 统计

jupyter-notebook ×2

matplotlib ×2

python ×1