この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
はじめに
ターミナル上にグラフを描画するコマンドラインツールの termgraph を試してみました。 え、ターミナルにグラフってどういうこと?と思ってたんですが、README見て納得でした。
今回はこのツールを使って、Developers.IOの年間投稿本数をグラフにしてみます。
検証環境
- macOS: 10.12.6
- Python: 3.7.0
- Pipenv: 2018.05.18
- termgraph: (バージョンなし)
試す
データを作成
データを作成します。投稿本数は下記ブログエントリから取得しました。
developers-io.txt
2011 509
2012 529
2013 1149
2014 1471
2015 1941
2016 2732
2017 2889
グラフを表示する
早速グラフを表示してみましょう。まず、Pythonの実行環境を用意して依存ライブラリをインストールします。
$ pipenv install --python 3.7.0
$ pipenv install colorama
$ pipenv shell
termgraphは2018/7/28時点だとリポジトリからスクリプトをダウンロードして使う前提のようです。今回はリポジトリごとダウンロードしてみます。
$ git clone https://github.com/mkaz/termgraph
用意したデータを表示します。
$ python termgraph/termgraph.py developers-io.dat
2011: ▏ 509.00
2012: ▏ 529.00
2013: ▇▇▇▇▇▇▇▇▇▇▇▇▇ 1149.00
2014: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 1471.00
2015: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 1941.00
2016: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 2732.00
2017: ▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇▇ 2889.00
ターミナル上にテキストで描画しているので、コードブロックに貼り付けても違和感ないですね!オプションで色を指定することもできるようです。
今回はデフォルトのフォーマットで表示しましたが、スタックグラフにも対応しているようです。以下はtermgraphのリポジトリにあるサンプルデータをスタックグラフで表示したものです。リポジトリのスナップショットと色合いが違うので実行環境に依存するものと思います。
おわりに
いかがでしたでしょうか。個人的にはターミナルにグラフを描画するという発想がなかったので非常に新鮮でした。簡単なデータを可視化してチャットツールで共有する際に使ってみたいと思います。