このようにして配列を作成しました。
import numpy as np
data = np.zeros( (512,512,3), dtype=np.uint8)
data[256,256] = [255,0,0]
これを実行したいのは、512 x 512の画像の中央に1つの赤い点を表示することです。 (少なくとも最初から…残りの部分はそこから把握できると思います)
PILを使って画像を作成(および表示)することができます。
from PIL import Image
import numpy as np
w, h = 512, 512
data = np.zeros((h, w, 3), dtype=np.uint8)
data[256, 256] = [255, 0, 0]
img = Image.fromarray(data, 'RGB')
img.save('my.png')
img.show()
以下が動作するはずです。
from matplotlib import pyplot as plt
plt.imshow(data, interpolation='nearest')
plt.show()
Jupyter Notebook/labを使用している場合は、matplotlibをインポートする前にこのインラインコマンドを使用してください。
%matplotlib inline
最短パスは、次のようにscipy
を使用することです。
from scipy.misc import toimage
toimage(data).show()
これにはPILまたはPillowもインストールする必要があります。
PILまたはPillowも必要な同様のアプローチですが、別のビューアを起動する可能性があります:
from scipy.misc import imshow
imshow(data)
pygame を使用すると、ウィンドウを開いてサーフェスをピクセルの配列として取得し、そこから必要に応じて操作できます。ただし、派手な配列をサーフェス配列にコピーする必要があります。これは、pygameサーフェス自体で実際のグラフィック操作を行うよりもはるかに遅くなります。
Python Imaging Library はNumpy配列を使って画像を表示することができます。このページでサンプルコードを確認してください。
編集:そのページの一番下のメモが言うように、あなたはこれをずっと簡単にする最新のリリースノートをチェックするべきです: