はじめに
今回は、ScottPlotの円グラフのデータに色を指定する方法を紹介します。
本家のCookBookには掲載されていない情報です。
円グラフの自体の作成方法が知りたい!という方は以下の記事を先にご覧ください。
円グラフの表示結果
円グラフに色を設定すると以下のように表示されます。
全体コード
円グラフに色を指定して、表示するコードは以下の通りです。
色指定のポイントはコードの下で解説します。
public partial class Form4a : Form
{
//
// デザイナでScottPlotの描画コントロール formsPlot1を
// 設定しています。
//
public Form4a()
{
InitializeComponent();
// サンプル用のデータです。
double[] datas = { 5, 20, 50, 10, 15 };
// サンプル用のラベル名です。対応するデータと同じ順番で並べてください。
string[] labels = { "LabelA", "LabelB", "LabelC", "LabelD", "LabelE" };
// 各データに指定する色の情報です
Color[] colors = { Color.Red, Color.Blue, Color.Green, Color.Black, Color.Gray };
//
// コントロールに円グラフ(Pie)としてセットします。
//
// colors: データの色を設定します。
// showPercentages: データの割合を表示します。
// showLabels: ラベルを表示します。
//
formsPlot1.plt.PlotPie(datas, labels, colors: colors, showPercentages: true, showLabels:true );
// グラフの後ろの目盛り線を非表示にします
formsPlot1.plt.Grid(false);
// コントロール(表示枠)の枠線を非表示にします。
formsPlot1.plt.Frame(true);
// X,Y軸の軸目盛りを非表示にします。
formsPlot1.plt.Ticks(false, false);
// 右下の凡例を表示します。
formsPlot1.plt.Legend();
// ScottPlotのコントロールにグラフを描画(表示)します。
formsPlot1.Render();
}
}
コードのポイント
- Color型の配列で色を指定します。
- 配列をPieオブジェクトの名前付引数に設定します。
下の行で項目に指定するColor型の配列を作成しています。表示するデータの順番に合わせて配列の要素を作成してください。
// 各データに指定する色の情報です
Color[] colors = { Color.Red, Color.Blue, Color.Green, Color.Black, Color.Gray };
以下の行で作成したColor配列を円グラフに設定しています。名前付配列「colors」に作成した配列を指定してください。
formsPlot1.plt.PlotPie(datas, labels, colors: colors, showPercentages: true, showLabels:true );
まとめ
ScottPlotの円グラフのデータに色を指定する方法について紹介しました。
円グラフをカスタマイズしたい人の参考になればうれしいです。
ScottPlotでは、散布図など他のグラフも高速に描画することが出来ます。
以下の記事で散布図の作成方法についても紹介しているので、よかったら参考にしてみてください。
伝わるグラフを作る
この記事の読者の方々は、少しでも「分かりやすく」「見やすく」といったことも考えてアプリケーションを作られている方が多いと思います。それだけでも十分に素晴らしいですが、「そもそもどんなグラフがユーザーにとって分かりやすいか?」といった、デザインやUXの知識・視点も結構おもしろいです。
以下の本など、比較的手軽な値段で読める書籍がいくつかあるので、ぜひ覗いてみてください。
応援・要望お待ちしてます
ブログを見ていて「この辺を詳しく知りたい」「このライブラリの使い方を知りたい」「こんなことで困ってる」...etc があれば、コメント・問い合わせ・Twitterで教えてください。質問・ご要望に合わせて解説記事を作ります。
ブログを気に入っていただけたり、「応援してもいいよ」という方がいたら、ブログやSNSでの紹介をお願いします。 あたたかい応援は、中の人の更新の大きな励みになります。