memorandums

日々の生活で問題解決したこと、知ってよかったことなどを自分が思い出すために記録しています。

グラフの値を読み取りたい

グラフだけ手元にあってそのグラフのデータを知りたい場合。。。かなり特殊なケースですが、そんなときに使えるツールがありました(ちなみに、このタスクをChatGPT(およびClaude)にやらせてみたんですが。。。全然ダメでした)

試行錯誤でとりあえず手順がわかりましたのでメモしておきます。

ツールはWebPlotDigitizerというものらしいです。

automeris.io

ブラウザで使えますがアカウント登録しなければならないので(アプリ版の)旧バージョンを入手して使いました。

以下、使用方法です。データはこちらのサイトからいただきました。ありがとうございます。

起動直後はこんな感じです。

FileメニューからLoad Imageを選択します。

グラフのファイルを選択します。

今回ははこ髭図なので棒グラフを選択します。要はY軸の値だけ読み取りたい場合ということです。

こんなダイアログが表示されます。上下の2点をクリックしてくれ、ということです。Proceedボタンを押します。

マウスカーソルを軸のメモリに合わせます。数値があるところをクリックします。クリックする前に拡大表示されますので縦軸で線の中央が選択できているかを確認してクリックしてください。

2点を選択したあと、よければCompleteボタンを押してください。

2点の縦軸の値を入力する画面になりますので、それぞれの値を入力してください。今回の場合は0と350ですね。

あとは、読み取りたいところをひたすらクリックしていきます。例えば、こんな感じです。

選択が終わったら左側にある「View Data」というボタンを押すと、それぞれのラベルの数値が表示されます。実際の数値(グラフにかかれている数値)とは若干違いますね。。。

使ってみるとわかるのですが、マウスカーソルの微妙な位置合わせができません。なぜかはわかりません。拡大してもマウスカーソルの移動精度はかわらないようです。画像の解像度がグラフの軸に対して不十分なのでしょう。

精度にこだわるなら画像をアップサンプリングして解像度をあげて(画像サイズを大きくして)やればたぶん精度が上がると思います。

最初、このツールをp5.jsで自作しようかと思ったんですが時間がなかったので使いました。使ってみれば十分だなと思います。作るまでもありません。

作者の方、感謝します。ありがとうございます🙇