Ipython: プロット時にセミコロンは抑制されません

作成日 2017年09月12日  ·  3コメント  ·  ソース: ipython/ipython

SO

1で]

import numpy as np
import matplotlib.pyplot as plt
from IPython.core.interactiveshell import InteractiveShell
InteractiveShell.ast_node_interactivity = "all";

[2]で

%matplotlib inline
data ={'first':np.random.rand(100), 
       'second':np.random.rand(100)}
fig, axes = plt.subplots(2)
for idx, k in enumerate(data):
    axes[idx].hist(data[k], bins=20);

plt.hist()の出力を抑制しません:
screen shot 2017-09-12 at 20 43 35

Pythonからの出力-c "import IPython; print(IPython.sys_info())"

{'commit_hash': 'd86648c5d',
 'commit_source': 'installation',
 'default_encoding': 'UTF-8',
 'ipython_path': '/Users/okomarov/anaconda/lib/python3.6/site-packages/IPython',
 'ipython_version': '6.1.0',
 'os_name': 'posix',
 'platform': 'Darwin-16.7.0-x86_64-i386-64bit',
 'sys_executable': '/Users/okomarov/anaconda/bin/python3',
 'sys_platform': 'darwin',
 'sys_version': '3.6.2 |Anaconda custom (x86_64)| (default, Jul 20 2017, '
                '13:14:59) \n'
                '[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.57)]'}

最も参考になるコメント

InteractiveShell.ast_node_interactivity = "all";を設定したので、すべてのノードでastインタラクティブ機能が有効になるように設定しました。

また、 ;は最後のトップレベル式に対してのみ機能しaxes[idx].hist(data[k], bins=20);forにネストされているため、トップレベルではありません。最後のトップレベルノードの場合はfor 、これはステートメントです。

最後のno-opステートメントを追加し、 ;

%matplotlib inline
data ={'first':np.random.rand(100), 
       'second':np.random.rand(100)};
fig, axes = plt.subplots(2);
for idx, k in enumerate(data):
    axes[idx].hist(data[k], bins=20)
pass;

そして、あなたは何の出力もありません。

全てのコメント3件

InteractiveShell.ast_node_interactivity = "all";を設定したので、すべてのノードでastインタラクティブ機能が有効になるように設定しました。

また、 ;は最後のトップレベル式に対してのみ機能しaxes[idx].hist(data[k], bins=20);forにネストされているため、トップレベルではありません。最後のトップレベルノードの場合はfor 、これはステートメントです。

最後のno-opステートメントを追加し、 ;

%matplotlib inline
data ={'first':np.random.rand(100), 
       'second':np.random.rand(100)};
fig, axes = plt.subplots(2);
for idx, k in enumerate(data):
    axes[idx].hist(data[k], bins=20)
pass;

そして、あなたは何の出力もありません。

@Carreau説明してくれてありがとう!

私はについて見つけることができませんでした:

と ; 最後のトップレベルの式に対してのみ機能します

それはどこかに文書化されていますか? 回答をコピーしてSOに貼り付けて、受け入れられるようにしますか?

それはどこかに文書化されていますか?

おそらくそうではないでしょう。 ast_interactivityオプションが使用されることはめったにないので、_most_のユースケースは最後の式のみであるため、区別を気にする必要はありません。

私がそれを受け入れることができるように、あなたの答えをコピーして貼り付けますか?

すでにやった、他のいくつかの詳細:-)

このページは役に立ちましたか?
0 / 5 - 0 評価