sfj*_*jac 8 python matplotlib ipython jupyter-notebook
我总是用一些样板来设置我的Jupyter笔记本来加载matplotlib并修改默认的数字大小(除此之外 - 这里的例子是一个最小的罪犯).我最近更新了anaconda,我的配置更改似乎不再正常工作.我已经想出了一个解决方法,但想知道是否有人有解释.
以下是我总是这样做(在单个单元格中):
%matplotlib inline
import matplotlib.pyplot as plt
import matplotlib as mpl
mpl.rcParams['figure.figsize'] = (16.0, 10.0)
Run Code Online (Sandbox Code Playgroud)
如下图所示(相对于后续图),这没有效果:
如果我把%matplotlib inline魔法放在一个单独的单元格中,那么这个问题就会消失:
不幸的是,我有很多笔记本电脑遇到这个问题.有没有办法来解决这个问题?为什么行为改变了?
这是版本信息:
Software Version
Python 3.6.4-64bit
IPython 6.2.1
jupyter 1.0.0
matplotlib 2.2.2
Run Code Online (Sandbox Code Playgroud)
conda list --revisions 如果我理解正确,请将以下内容报告为最后更新:
matplotlib {2.1.0 -> 2.2.2}
ipython {6.1.0 -> 6.2.1}
jupyter_client {5.1.0 -> 5.2.3}
jupyter_core {4.3.0 -> 4.4.0}
Run Code Online (Sandbox Code Playgroud)
小智 -1
%matplotlib inline
Run Code Online (Sandbox Code Playgroud)
它是一个面向行的神奇函数。基本上,您的代码是完美的,但您的代码在排序方面存在问题。
在你的这段代码中:
%matplotlib inline
import matplotlib.pyplot as plt
import matplotlib as mpl
mpl.rcParams['figure.figsize'] = (16.0, 10.0)
Run Code Online (Sandbox Code Playgroud)
这里,在导入 matplotlib 库之前先调用“%matplotlib inline”。
在第二种情况下,您执行相同的操作,但这次您将“%matplotlib inline”放入不同的单元格中并且它可以工作。因为在 google colab/jupyter 笔记本中每个单元都是独立的。
除此之外,当您启用“内联”matplotlib 后端时,绘图命令的输出将写入前端。这意味着图形或绘图将显示在单元格下方。
这就是为什么在这两种情况下都会得到不同的输出。