より良いエンジニアを目指して

1日1つ。良くなる!上手くなる!

WPFでグラフを表示できるライブラリScottPlot

WPFでグラフを表示できるライブラリないかなーと探してました。

前職ではSciChartという有償のライブラリを使ってましたが、フリーではないよなーと思いつつ検索しました。

すると、以下のライブラリに出会いました。

swharden.com

ドキュメントも充実していて、短いコードでグラフが表示できます。

f:id:rimever:20210305220335p:plain

WPFでもWinFormsでも利用できます。

ズームやパン、ドラッグにも対応してますね。

グラフ系はこだわり出すと、キリがなく、痒いところに手が届かないものです。

点にマウスを合わせた時のツールチップはなさそうですね。

とはいえ、簡単なグラフを表示するだけなら十分でした。

つまづいたところを挙げるとすればグラフを更新した時の再描画の方法。

Render関数を呼び出せば再描画されます。

        private void Update()
        {
            WpfPlot.plt.Clear();
            var xs = new double[60];
            var values = new double[xs.Length];
            for (int i = 1; i < xs.Length; i++)
            {
                xs[i] = i;
                values[i] = i * i * 10;
            }
            WpfPlot.plt.PlotBar(xs, values);
            WpfPlot.Render();
        }