C#を使用してExcelで組み合わせグラフを作成する方法

組み合わせグラフとは、同じグラフに2つ以上のスタイルが含まれているグラフのことです。このようなグラフは、データをより包括的に分析するのに役立ちます。一般的な組み合わせグラフは、縦棒グラフと折れ線グラフの混合グラフです。この記事では、C#と無料バージョンのSpire.XLSを使用してこの種のグラフを作成する方法を紹介します。

 

Excelドキュメントデータのスクリーンショット:

f:id:uha_noki:20211203151912p:plain

次のコードを使用する前に、Spire.Xls.dllファイルを参照し、次の名前空間を追加する必要があります:

using Spire.Xls;

using Spire.Xls.Charts;

 

詳細な手順:

手順1:ワークブックのインスタンスを作成し、Excelドキュメントを読み込みます。

Workbook workbook = new Workbook();

workbook.LoadFromFile("data.xlsx");

手順2:最初のワークシートを取得します。

Worksheet sheet = workbook.Worksheets[0];

手順3:ワークシートにグラフを追加します。

Chart chart = sheet.Charts.Add();

chart.DataRange = sheet.Range["A1:D5"];

chart.SeriesDataFromRange = false;

手順4:グラフの位置を設定します。

chart.LeftColumn = 6;

chart.TopRow = 1;

chart.RightColumn = 12;

chart.BottomRow = 13;

手順5:グラフのデータ系列にさまざまなグラフタイプを設定します。

//チャートのシリーズ1とシリーズ2のチャートタイプを縦棒グラフに設定する

var cs1 = (ChartSerie)chart.Series[0];

cs1.SerieType = ExcelChartType.ColumnClustered;

var cs2 = (ChartSerie)chart.Series[1];

cs2.SerieType = ExcelChartType.ColumnClustered;

//チャートのシリーズ3のチャートタイプを折れ線グラフに設定する

var cs3 = (ChartSerie)chart.Series[2];

cs3.SerieType = ExcelChartType.LineMarkers;

 

//チャートに2次軸を追加する

chart.SecondaryCategoryAxis.IsMaxCross = true;

cs3.UsePrimaryAxis = false;

手順6:ファイルを保存します。

//ファイルを保存する

workbook.SaveToFile("result.xlsx", ExcelVersion.Version2010);

System.Diagnostics.Process.Start("result.xlsx");

 

結果は以下のようになります:

f:id:uha_noki:20211203151741p:plain

コード一覧:

using Spire.Xls;

using Spire.Xls.Charts;

 

namespace CreateCombinationExcel

{

    class Program

    {

        static void Main(string[] args)

        {

            Workbook workbook = new Workbook();

            //Excelファイルをロードする

            workbook.LoadFromFile("data.xlsx");

            //最初のワークブックを取得する

            Worksheet sheet = workbook.Worksheets[0];

 

            //ワークシートにグラフを追加する

            Chart chart = sheet.Charts.Add();

            chart.DataRange = sheet.Range["A1:D5"];

            chart.SeriesDataFromRange = false;

 

            //チャートの位置を設定する

            chart.LeftColumn = 6;

            chart.TopRow = 1;

            chart.RightColumn = 12;

            chart.BottomRow = 13;

 

            //チャートのシリーズ1とシリーズ2のチャートタイプを縦棒グラフに設定する

            var cs1 = (ChartSerie)chart.Series[0];

            cs1.SerieType = ExcelChartType.ColumnClustered;

            var cs2 = (ChartSerie)chart.Series[1];

            cs2.SerieType = ExcelChartType.ColumnClustered;

            //チャートのシリーズ3のチャートタイプを折れ線グラフに設定する

            var cs3 = (ChartSerie)chart.Series[2];

            cs3.SerieType = ExcelChartType.LineMarkers;

 

            //チャートに2次軸を追加する

            chart.SecondaryCategoryAxis.IsMaxCross = true;

            cs3.UsePrimaryAxis = false;

 

            //ファイルを保存する

            workbook.SaveToFile("result.xlsx", ExcelVersion.Version2010);

            System.Diagnostics.Process.Start("result.xlsx");

        }

    }

}

こうやって組み合わせグラフは作成完了です、最後まで読んでいただきありがとうございます。