C# PR

【C# ScottPlot】簡単! 円グラフのデータに色を指定する方法

記事内に商品プロモーションを含む場合があります

はじめに

今回は、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では、散布図など他のグラフも高速に描画することが出来ます。
以下の記事で散布図の作成方法についても紹介しているので、よかったら参考にしてみてください。

自分でコードを打つ時間がない時は

『自分でやるには時間がない、でも頼める人もいない』と悩んでいるあなたに「ココナラ」があります。

登録者数は約200万。専門家・フリーランスも多く、制作サンプルやレビューを見て自分にあった人を選ぶことができます。特に人気の「Python」なら絶対数が多いので「デキる人」も見つけやすいです。登録は無料なのでどんな人・チームがいるか確認してみてください。

(HP製作・動画製作・面倒な業務文書の作成代行も依頼もできますよ)

1分以内に完了!無料会員登録はこちら

お知らせ

今月号のSoftware Designは「もっとTypeScriptの力を引き出そう」

JavaScriptの拡張言語でしょ?と思っているかたへ、Union型などTypeScriptの持つ秘めたる力を解説する特集となっています。

個人的には第2特集の「Ubuntuの現代的な使い方」がの方が気になりました。より詳しい内容は以下のリンクからご覧ください。

質問・要望 大歓迎です

「こんな解説記事作って」「こんなことがしたいけど、〇〇で困ってる」など、コメント欄で教えてください。 質問・要望に、中の人ができる限り対応します。

使えたよ・設定できたよの一言コメントも大歓迎。気軽に足跡を残してみてください。記事を紹介したい方はブログ、SNSにバシバシ貼ってもらってOKです。

ABOUT ME
えす
現役のソフトウェアエンジニアです。 C++ C# Python を使ってます。10年ちょい設計/開発部門にいましたが、今はQAエンジニアっぽいことをしています。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です