在Ipython notebook / Jupyter中,Pandas未显示我尝试绘制的图形


104

我正在尝试使用Ipython Notebook中的熊猫绘制一些数据,尽管它给了我对象,但实际上并没有绘制图形本身。所以看起来像这样:

In [7]:

pledge.Amount.plot()

Out[7]:

<matplotlib.axes.AxesSubplot at 0x9397c6c>

该图应在此之后,但根本不会出现。我已经导入了matplotlib,所以这不是问题。我还需要导入其他模块吗?


几天前,我可以在观看视频的同时对事物进行绘图,但是现在我似乎无法绘制任何东西。而且我似乎在做与文档相同的操作。pandas.pydata.org/pandas-docs/stable/visualization.html所以我想的东西与我的系统是错误的或模块不导入
chrisfs

@chrisfs有一个新的正确答案。您几年前选择的那个现在不正确。您会考虑更改您接受的答案吗?谢谢。
tumultous_rooster

Answers:


177

请注意,--pylab已被弃用,并且已从较新的IPython版本中删除。建议在IPython Notebook中启用内联绘图的方法现已运行:

%matplotlib inline
import matplotlib.pyplot as plt

有关更多详细信息,请参阅ipython-dev邮件列表中的这篇文章


2
很好。经过%matplotlib inline我的尝试绘制后,产生了内嵌可见图像,很好。实际上,如果绘图是OP中已经存在的对象的方法,则不需要导入。
2015年

2
这是新的正确答案。有关此博客文章的更多信息。
Scott Lowrey 2015年

@Tal Yarkoni我添加了答案的第一行,以便它起作用。谢谢~~!
verystrongjoe

也适用于Jupyter笔记本中的熊猫。
datalifenyc

为了完整性起见,%matplotlib nbagg这些天对于获得更具交互性的版本很有用。
Frederick Nord

50

编辑:Pylab已被弃用,请参阅当前接受的答案

好的,看来答案是使用--pylab = inline启动ipython Notebook。因此,ipython notebook --pylab = inline可以完成我之前看到的以及我想要它做的事情。对不起这个原始的问题。


26
是的,这就是您所需要的。您也可以%pylab inline在笔记本中运行以启用pylab模式。
Thomas K

3
请注意,尽管熊猫可以工作,但不必处于串联模式。ipython notebook --pylab如果有人想要的话,我很高兴与熊猫一起使用,以在另一个窗口中显示该地块。
K.-Michael Aye 2012年


4

导入matplotlib之后很简单,如果像这样启动ipython,就可以执行一个魔术

ipython notebook 

%matplotlib inline 

运行此命令,一切都会完美显示


1

使用来启动ipython ipython notebook --pylab inline,然后图形将内联显示。


是的,这是该问题的第一个答案,但现在似乎已经过时了。
chrisfs 2015年


-5

您需要做的就是导入 matplotlib。

import matplotlib.pyplot as plt 

I have imported matplotlib
WoodChopper

嗯,这很奇怪。你用什么?我使用iPython Notebook。我的代码如下。data.plot(种类='barh',堆积= True)
好奇的思维

该答案是上面接受的答案的重复。
chrisfs 2015年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.