2017-05-28 16 views
1

次は動作しません:Pythonスクリプトで '%matplotlib inline'が動作しないのはなぜですか?

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 cmdは、標準のPythonプログラム中のSO %は、ある数を別で割って(または文字列補間のために使用することができる)余りをとる、cmd

標準Pythonで

の別名としてalias_nameを定義します%matplotlib inlineは意味をなさない。しかし、上記のように、iPythonで動作します。

関連する問題