-
print x
ではなく,print(x)
-
パッケージ
PIL
は,ありません.現在はそのフォーク版パッケージpillow
になります. -
パッケージ
pylab
(MATLAB風python実装)は,ありません.pylab
の数値計算部分は,numpy
が使われています.pylab
のグラフ表示部分は,matplotlib
が使われています.
-
インポートワイルドカード
*
は非推奨from pylab import *
pylab
のすべて(ワイルドカード*
)のモジュールをインポートしていますが,ワイルドカード*
は現在推奨されていません.import numpy as np from matplotlib import pyplot as plt
のようにするのが一般的です.
array()
-->np.array()
imshow()
-->plt.imshow()
plot()
-->plt.plot()
title()
-->plt.title()
show()
-->plt.show()
画像の表示は,
- キャンバス作成
fig, ax = plt.figure()
- キャンバスに画像やグラフを掲載
ax.plot()
- キャンバスを表示
plt.show(fig)
の3つで成り立つ.
ipythonの場合は,画像表示をインライン(Non-GUI)で行われることになっており,3のplt.show(fig)
は行うことができない.
その代わり,1の操作を行ったセルに対して出力セルに出力される.
注意として,2の操作は出力セルに画像を表示せず,あくまでキャンバスを内部更新するだけである.
したがって,ipythonの場合,1と2の操作が異なるセルで行われていると,1の操作のあるセルAで,画像表示がされ,2の操作のあるセルBには何も表示されないし,セルAで表示された画像が更新されて再表示されるわけでない.
もし,2の操作のあるセルBで,再度画像を表示したいなら,
ax.plot()
fig
と2の操作と同じセルで直後にfig
を打つ.