VSTOとAspose.Cellsで円グラフを作成
Contents
[
Hide
]
この記事では、オフィス自動化とVSTOを使用して円グラフを作成する方法をAspose.Cells for .NETを使用する方法と比較します。円グラフを作成する手順は次のとおりです:
- ワークブックとワークシートを作成する。
- サンプルデータを追加する。
- productsChart を参照する。
- パイチャートを追加し、データ範囲とチャートのタイトルを定義する。
- スプレッドシートを保存する。 この記事のコードサンプルでは、VSTO を使用して C# でパイチャートを追加する方法と、Aspose.Cells を使用して C# で作成する方法が示されています。
VSTO
private void PieChart()
{
//Instantiate the Application object.
Excel.Application ExcelApp = Application;
//Add a Workbook.
Excel.Workbook objBook = ExcelApp.Workbooks.Add(System.Reflection.Missing.Value);
// Access a Vsto Worksheet
Microsoft.Office.Interop.Excel.Worksheet nativeWorksheet = Globals.ThisAddIn.Application.ActiveWorkbook.ActiveSheet;
Microsoft.Office.Tools.Excel.Worksheet sheet = Globals.Factory.GetVstoObject(nativeWorksheet);
//Add sample data for pie chart
//Add headings in A1 and B1
sheet.Cells[1, 1] = "Products";
sheet.Cells[1, 2] = "Users";
//Add data from A2 till B4
sheet.Cells[2, 1] = "Aspose.Cells";
sheet.Cells[2, 2] = 10000;
sheet.Cells[3, 1] = "Aspose.Slides";
sheet.Cells[3, 2] = 8000;
sheet.Cells[4, 1] = "Aspose.Words";
sheet.Cells[4, 2] = 12000;
//Chart reference
Microsoft.Office.Tools.Excel.Chart productsChart;
//Add a Pie Chart
productsChart = sheet.Controls.AddChart(0, 105, 330, 200, "ProductUsers");
productsChart.ChartType = Microsoft.Office.Interop.Excel.XlChartType.xlPie;
//Set chart title
productsChart.HasTitle = true;
productsChart.ChartTitle.Text = "Users";
//Gets the cells that define the data to be charted.
Microsoft.Office.Interop.Excel.Range chartRange = sheet.get_Range("A2", "B4");
productsChart.SetSourceData(chartRange, missing);
//Access the Active workbook from Vsto sheet
Microsoft.Office.Interop.Excel.Workbook workbook = sheet.Application.ActiveWorkbook;
//Save the copy of workbook as OutputVsto.xlsx
workbook.SaveCopyAs("OutputVsto.xlsx");
}
Aspose.Cells
private static void PieChart()
{
//Create Aspose.Cells Workbook
Workbook workbook = new Workbook();
//Access Aspose.Cells Worksheet
Worksheet sheet = workbook.Worksheets[0];
//Add sample data for pie chart
//Add headings in A1 and B1
sheet.Cells["A1"].PutValue("Products");
sheet.Cells["B1"].PutValue("Users");
//Add data from A2 till B4
sheet.Cells["A2"].PutValue("Aspose.Cells");
sheet.Cells["B2"].PutValue(10000);
sheet.Cells["A3"].PutValue("Aspose.Slides");
sheet.Cells["B3"].PutValue(8000);
sheet.Cells["A4"].PutValue("Aspose.Words");
sheet.Cells["B4"].PutValue(12000);
//Chart reference
Chart productsChart;
//Add a Pie Chart
int chartIdx = sheet.Charts.Add(ChartType.Pie, 7, 0, 20, 6);
productsChart = sheet.Charts[chartIdx];
//Gets the cells that define the data to be charted
int seriesIdx = productsChart.NSeries.Add("=Sheet1!$B$2:$B$4", true);
Series nSeries = productsChart.NSeries[seriesIdx];
nSeries.XValues = "=Sheet1!$A$2:$A$4";
//Set chart title
productsChart.Title.Text = "Users";
//Autofit first column
sheet.AutoFitColumn(0);
//Save the copy of workbook as OutputAspose.xlsx
workbook.Save("OutputAspose.xlsx");
}