添加链接
link之家
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

python语法错误:无效的语法 %matplotlib inline

20 人关注

I got this error in my python script:

%matplotlib inline
import numpy as np
import matplotlib.pyplot as plt
from utils import progress_bar_downloader
import os
#Hosting files on my dropbox since downloading from google code is painful
#Original project hosting is here: https://code.google.com/p/hmm-speech-recognition/downloads/list
#Audio is included in the zip file
link = 'https://dl.dropboxusercontent.com/u/15378192/audio.tar.gz'
dlname = 'audio.tar.gz'
if not os.path.exists('./%s' % dlname):
    progress_bar_downloader(link, dlname)
    os.system('tar xzf %s' % dlname)
else:
    print('%s already downloaded!' % dlname)

我想使用matplotlib,但它给出了语法错误。 我试着用sudo apt-get安装python-matplotlib。

python
matplotlib
plot
jupyter-notebook
jupyter
Prajakta Dumbre
Prajakta Dumbre
发布于 2016-09-12
6 个回答
Sandipan Dey
Sandipan Dey
发布于 2020-10-24
已采纳
0 人赞同

如果你没有使用Jupyter IPython笔记本,只需注释(或删除)这一行,一切都会正常工作,如果你从控制台运行你的Python脚本,将会打开一个单独的绘图窗口。

然而,如果你使用的是Jupyter IPython笔记本,你的笔记本中的第一个Python代码单元应该有"%matplotlib inline "一行,这样你就能查看任何绘图。

MMN
MMN
发布于 2020-10-24
0 人赞同

"%matplotlib inline "不是有效的python代码,所以你不能把它放在脚本中。

我假设你使用的是Jupyter笔记本?如果是的话,把它放在第一个单元格里,所有的东西都应该能用。

我不明白。第一个细胞是什么意思?
当然!这对Python脚本来说是一种无效的语法。
Magdrop
Magdrop
发布于 2020-10-24
0 人赞同

"%matplotlib inline "是一条神奇的命令,在Jupyter IPython笔记本中效果最好。 这个命令使得在使用Jupyter笔记本时,图片会自动显示在浏览器的内联,而不需要调用show()。 IPython是支持这些神奇命令的核心,但在这种情况下,仅仅从控制台使用IPython是不够的,因为这个特殊的调用试图显示内联图形。 不知道它在其他组合中是否有效,但要开始,请使用Jupyter笔记本。

你只能在单元格内使用这段代码。 按Shift+Enter键来执行它。

In []: %matplotlib inline

由于这不是一个有效的Python代码,如果我们把它包含在一个Python脚本中,它将返回一个语法错误(即使该脚本在Jupyter笔记本中使用导入或其他机制执行)。

和其他捷径一样,如果不想使用jupyter notebook,你可以从你的python脚本中删除"%matplotlib inline",并在最后添加show()来显示你的图。

谢谢你的解答,但有一件奇怪的事情发生在我身上,我在ubuntu14.04上用jupyter运行代码,没有这一行,运行得很好,但当我安装ubuntu18.04并用jupyter运行代码时,我得到了错误,这一行修复了,为什么会发生这种问题?
BillD
BillD
发布于 2020-10-24
0 人赞同

我在Spyder中使用 %matplotlib 内联时也有同样的语法错误。
在我用以下几行代码替换它之后,我想绘制的系列 new_obj 成功地显示在控制台。

    import matplotlib.pyplot as plt
    new_obj.resample('M').sum().plot(kind="bar")
    plt.show()
    
Mayur Gupta
Mayur Gupta
发布于 2020-10-24
0 人赞同

%matplotlib inline只在Ipython控制台中工作良好,否则在Jupyter笔记本中工作非常明显和频繁。 因此,在我的建议中,如果你想使用Matplotlib,那么就去使用Jupyter笔记本吧。

Fred
Fred
发布于 2020-10-24
0 人赞同

评论 [ %matplotlib inline ]

添加 [ plt.show() ]

简单的代码,可以工作。

import pandas_datareader.data as web
import datetime
import matplotlib.pyplot as plt
# %matplotlib inline
start = datetime.datetime(2012,1,1)
end = datetime.datetime(2017,1,1)