pythonのアルゴリズム可視化ツールipytracerで,ヒストグラム作成をアニメーション化してみた.
- ipytracer https://github.com/sn0wle0pard/ipytracer
- Algorithm Visualizerにインスパイアされたとのこと.http://algo-visualizer.jasonpark.me でもこちらはjavascript?
インストール
$ pip install ipytracer
$ jupyter nbextension enable --py --sys-prefix ipytracer
使い方
jupyter notebookでやりましょう
import ipytracer
from IPython.display import display
import numpy as np
from time import sleep
def hist(img):
h, w = img.shape
im = ipytracer.List2DTracer(img.tolist())
display(im)
hist = ipytracer.ChartTracer(list(np.zeros(img.max()+1)))
display(hist)
for i in range(10):
hist[i] = 0 # 一回目のアクセスがなぜか表示されないので,とりあえずここでアクセスしておく
for y in range(h):
for x in range(w):
value = im[y][x]
hist[value] += 1
# sleep(1) # 表示が速すぎるときにはスリープ
im = np.random.randint(1, 30, size=(5, 10)) # 5x10ランダム画像生成
hist(im) # 画像のヒストグラム作成