2017-05-28 61 views
1

下不起作用:为什么'%matplotlib inline'在python脚本中不起作用?

enter image description here

然而,这完全适用于木星笔记本。

enter image description here

如果我只是注释掉,图中显示不出来。 (也许它不会显示反正)

import pandas as pd 
import matplotlib 

from numpy.random import randn 
import numpy as np 

import matplotlib.pyplot as plt 

df = pd.read_csv('data/playgolf.csv', delimiter='|') 
print(df.head()) 

hs = df.hist(['Temperature','Humidity'], bins=5) 
print(hs) 
+0

正在使用的那样是无效的Python语法。这必须是Jupiter特有的操作符,因为通常'%'代表模;也就是说,一个数字除以另一个数字的余数。 – numbermaniac

+1

Jupiter Notebook具有不属于Python语言本身的功能。所有%-prefixed命令都是特殊的扩展,而不是常规的Python语句。 – Blckknght

+0

@Blckknght你会推荐和替代品吗? – ZHU

回答

3

其他答案和评论有足够的细节为什么%matplotlib inline不能在python脚本中工作。

要解决实际问题,这是显示在脚本剧情,答案是使用

plt.show() 

在脚本的结尾。

0

http://ipython.readthedocs.io/en/stable/interactive/magics.html%是一种特殊的IPython/Jupyter命令:

定义的系统命令的别名。

%alias alias_name cmdalias_name定义为用于cmd

在标准Python别名,%取当一个数除以另一个(或可用于串内插)余数,所以,在标准Python程序, %matplotlib inline没有任何意义。但是,它确实在iPython中工作,如上所述。

相关问题