縦棒グラフは、データを矩形列として視覚化するグラフで、列の高さはデータ点の値を示します。Excel で縦棒グラフを作成することは、データを比較し、時間とともにデータを表示するための良い方法です。この記事では、Spire.XLS for .NET を使用して、C# および VB.NET でプログラムによって Excel 縦棒グラフを作成する方法を紹介します。
Spire.XLS for .NET をインストールします
まず、Spire.XLS for .NET パッケージに含まれているDLLファイルを.NETプロジェクトの参照として追加する必要があります。DLL ファイルは、このリンクからダウンロードするか、NuGet を介してインストールできます。
PM> Install-Package Spire.XLS
Excel で縦棒グラフを作成する
詳細な操作手順は次のとおりです。
- Workbook インスタンスを作成します。
- Workbook.Worksheets[sheetIndex] プロパティを使用して、最初のシートを取得します。
- 指定したセルにデータを追加し、セルスタイルを設定します。
- Worksheet.Charts.Add(ExcelChartType.ColumnClustered) メソッド使用して、シートに集合縦棒グラフを追加します。
- Chart.DataRange プロパティを使用して、グラフのデータ範囲を設定します。
- グラフの位置、タイトル、カテゴリ軸、値軸を設定します。
- グラフのデータ系列をループし、ChartSerie.DataPoints.DefaultDataPoint.DataLabels.HasValue プロパティをtrueに設定することで、データポイントのデータラベルを表示します。
- Chart.Legend.Positionプロパティを使用して、グラフの凡例の位置を設定します。
- Workbook.SaveToFile() メソッドを使用して、結果文書を保存します。
- C#
- VB.NET
using System.Drawing;
using Spire.Xls;
using Spire.Xls.Charts;
namespace ColumnChart
{
class Program
{
static void Main(string[] args)
{
//Workbookインスタンスを作成する
Workbook workbook = new Workbook();
//最初のシートを取得する
Worksheet sheet = workbook.Worksheets[0];
//指定したセルにデータを追加する
sheet.Range["A1"].Value = "国";
sheet.Range["A2"].Value = "キューバ.";
sheet.Range["A3"].Value = "メキシコ.";
sheet.Range["A4"].Value = "フランス.";
sheet.Range["A5"].Value = "ドイツ.";
sheet.Range["B1"].Value = " A社";
sheet.Range["B2"].NumberValue = 5000;
sheet.Range["B3"].NumberValue = 8000;
sheet.Range["B4"].NumberValue = 9000;
sheet.Range["B5"].NumberValue = 8500;
sheet.Range["C1"].Value = "B社";
sheet.Range["C2"].NumberValue = 3000;
sheet.Range["C3"].NumberValue = 5000;
sheet.Range["C4"].NumberValue = 7000;
sheet.Range["C5"].NumberValue = 6000;
//セルスタイルを設定する
sheet.Range["A1:C1"].Style.Font.IsBold = true;
sheet.Range["A1:C1"].Style.KnownColor = ExcelColors.Black;
sheet.Range["A1:C1"].Style.Font.Color = Color.White;
sheet.Range["A1:C5"].Style.HorizontalAlignment = HorizontalAlignType.Center;
sheet.Range["A1:C5"].Style.VerticalAlignment = VerticalAlignType.Center;
//数値のフォーマットを設定する
sheet.Range["B2:C5"].Style.NumberFormat = "\"$\"#,##0";
//シートに集合縦棒グラフを追加する
Chart chart = sheet.Charts.Add(ExcelChartType.ColumnClustered);
//グラフのデータ範囲を設定する
chart.DataRange = sheet.Range["A1:C5"];
chart.SeriesDataFromRange = false;
//グラフの位置を設定する
chart.LeftColumn = 1;
chart.TopRow = 7;
chart.RightColumn = 11;
chart.BottomRow = 29;
//グラフのタイトルの設定と書式設定
chart.ChartTitle = " A社とB社の販売状況";
chart.ChartTitleArea.Font.Size = 13;
chart.ChartTitleArea.Font.IsBold = true;
//カテゴリ軸の設定と書式設定
chart.PrimaryCategoryAxis.Title = "国";
chart.PrimaryCategoryAxis.Font.Color = Color.Blue;
//値軸の設定と書式設定
chart.PrimaryValueAxis.Title = "売上高";
chart.PrimaryValueAxis.HasMajorGridLines = false;
chart.PrimaryValueAxis.MinValue = 1000;
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90;
//データポイントのデータラベルを表示する
foreach (ChartSerie cs in chart.Series)
{
cs.Format.Options.IsVaryColor = true;
cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = true;
}
//グラフの凡例の位置を設定する
chart.Legend.Position = LegendPositionType.Top;
//結果文書を保存する
workbook.SaveToFile("ExcelColumnChart.xlsx", ExcelVersion.Version2010);
}
}
}
Imports Spire.Xls
Imports Spire.Xls.Charts
Namespace ColumnChart
Class Program
Private Shared Sub Main(ByVal args() As String)
'Workbookインスタンスを作成する
Dim workbook As Workbook = New Workbook
'最初のシートを取得する
Dim sheet As Worksheet = workbook.Worksheets(0)
'指定したセルにデータを追加する
sheet.Range("A1").Value = "国"
sheet.Range("A2").Value = "キューバ. "
sheet.Range("A3").Value = "メキシコ. "
sheet.Range("A4").Value = "フランス. "
sheet.Range("A5").Value = "ドイツ. "
sheet.Range("B1").Value = " A社"
sheet.Range("B2").NumberValue = 5000
sheet.Range("B3").NumberValue = 8000
sheet.Range("B4").NumberValue = 9000
sheet.Range("B5").NumberValue = 8500
sheet.Range("C1").Value = " B社"
sheet.Range("C2").NumberValue = 3000
sheet.Range("C3").NumberValue = 5000
sheet.Range("C4").NumberValue = 7000
sheet.Range("C5").NumberValue = 6000
'セルスタイルを設定する
sheet.Range("A1:C1").Style.Font.IsBold = True
sheet.Range("A1:C1").Style.KnownColor = ExcelColors.Black
sheet.Range("A1:C1").Style.Font.Color = Color.White
sheet.Range("A1:C5").Style.HorizontalAlignment = HorizontalAlignType.Center
sheet.Range("A1:C5").Style.VerticalAlignment = VerticalAlignType.Center
'数値のフォーマットを設定する
sheet.Range("B2:C5").Style.NumberFormat = """$""#,##0"
'シートに集合縦棒グラフを追加する
Dim chart As Chart = sheet.Charts.Add(ExcelChartType.ColumnClustered)
'グラフのデータ範囲を設定する
chart.DataRange = sheet.Range("A1:C5")
chart.SeriesDataFromRange = False
'グラフの位置を設定する
chart.LeftColumn = 1
chart.TopRow = 7
chart.RightColumn = 11
chart.BottomRow = 29
'グラフのタイトルの設定と書式設定
chart.ChartTitle = " A社とB社の販売状況"
chart.ChartTitleArea.Font.Size = 13
chart.ChartTitleArea.Font.IsBold = True
'カテゴリ軸の設定と書式設定
chart.PrimaryCategoryAxis.Title = "国"
chart.PrimaryCategoryAxis.Font.Color = Color.Blue
'値軸の設定と書式設定
chart.PrimaryValueAxis.Title = "売上高"
chart.PrimaryValueAxis.HasMajorGridLines = False
chart.PrimaryValueAxis.MinValue = 1000
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = 90
'データポイントのデータラベルを表示する
For Each cs As ChartSerie In chart.Series
cs.Format.Options.IsVaryColor = True
cs.DataPoints.DefaultDataPoint.DataLabels.HasValue = True
Next
'グラフの凡例の位置を設定する
chart.Legend.Position = LegendPositionType.Top
'結果文書を保存する
workbook.SaveToFile("ExcelColumnChart.xlsx", ExcelVersion.Version2010)
End Sub
End Class
End Namespace
一時ライセンスを申請する
結果ドキュメントから評価メッセージを削除したい場合、または機能制限を取り除く場合は、についてこのメールアドレスはスパムボットから保護されています。閲覧するにはJavaScriptを有効にする必要があります。にお問い合わせ、30 日間有効な一時ライセンスを取得してください。