2018年8月13日月曜日

Jupyterのプログレスバーを使って進捗をアニメーション表示する

(python3.6, jupyter1.0.0)

Jupyterでループの進捗具合をメーターで可視化します。

Progress Bar
ipywidgetsモジュールを使います。
import ipywidgets as widgets
import time
end = 100
progress = widgets.IntProgress(
    min=0,
    max=end,
    step=1,
    description='Test:', # dummy
    bar_style='', # 'success', 'info', 'warning', 'danger' or ''
    orientation='horizontal'
)
display(progress)
for val in range(end+1):
    time.sleep(0.1)
    progress.description='Test:{}'.format(val)
    progress.value=val
min
カウントの最小

max
カウントの最大

step
カウントのステップ

description
バーの横にテキストを出す

bar_style
バーの色が変わります。
'' (デフォルト。指定なし): 青
success: 緑
info: 水色
warning: 黄色
danger:赤

orientation
バーの縦横

を変数で設定して、progressの中のmaxとforループの終了に与えています。
progress.description で毎回値を変えていますが、桁が変わると表示がずれることがあります。


公式のドキュメントから。種類はいろいろあります。
http://ipywidgets.readthedocs.io/en/latest/examples/Widget%20Basics.html
http://ipywidgets.readthedocs.io/en/latest/examples/Widget%20List.html

こちらも参考になりますが・・・少し古いかもしれません。
https://qiita.com/mix_dvd/items/e613c2714c7ea0e81be9

0 件のコメント:

コメントを投稿