将棋棋士データベースで遊ぶ(8)〜棋士の師弟関係をD3.jsで可視化〜

※この記事は「将棋 Advent Calendar 2016 – Adventar」の20日目です。

将棋連盟の棋士データベースで遊んでみようというこのシリーズ、だんだんネタ的に苦しくなってきましたがwもう少しだけ頑張って続けてみます。

棋士データベースには師匠が誰なのかという情報も掲載されています。せっかくのそのデータを生かして、棋士の師弟関係を可視化してみようと思います。

棋士の師弟関係をD3.jsで可視化

今回、師弟関係の可視化には Sankey Diagram という方式を使ってみました。以前、当サイトで2016夏の甲子園出場校選手の出身都道府県を可視化してみたことがありましたがそれを応用したやり方です。

出来上がりはこんな感じになりました。

D3.js

棋士の数が多いせいか密集し過ぎて何だかものすごいことになってしまいました。見づらくてすいません・・・。

棋士名の部分をドラッグ&ドロップすると移動できるので、試しに井上門下の棋士を集めてみたところこんな感じに。データが多くてちゃんと検証できていませんが、まあ合ってそうではありますね。

D3.js

「聖の青春」でも脚光を浴びている森信雄門下はさすがに大所帯なのでこれほどのバーの長さに。この迫力、ぜひ実際にご覧になってみてください。

D3.js

それにしてもこのダイアグラムでは見づらいので、できれば次回はもう少し見やすい形に工夫してみたいですね・・・。何かいいアイデアなどありましたらぜひ教えてください!

この記事で作ったコードはこちらに上げてありますので、どうぞご自由にご覧ください。