读取和操作Excel 2016图表
Contents
[
Hide
]
可能的使用场景
Aspose.Cells支持读取和操作Microsoft Excel 2016图表,这些图表在Microsoft Excel 2013或更早版本中不存在。
读取和操作Excel 2016图表
以下示例代码加载了包含Excel 2016图表的 示例Excel文件 在第一个工作表中。它逐个读取所有图表并根据图表类型更改其标题。以下截图显示了执行代码之前的示例Excel文件。您可以看到,所有图表的标题都是相同的。
以下截图显示了代码执行后的 输出Excel文件。您可以看到,图表的标题已根据其图表类型更改。
示例代码
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// For complete examples and data files, please go to https://github.com/aspose-cells/Aspose.Cells-for-C | |
Aspose::Cells::Startup(); | |
//Source directory path | |
U16String srcDir(u"..\\Data\\01_SourceDirectory\\"); | |
//Output directory path | |
U16String outDir(u"..\\Data\\02_OutputDirectory\\"); | |
//Path of input excel file | |
U16String sampleReadAndManipulateExcel2016Charts = srcDir + u"sampleReadAndManipulateExcel2016Charts.xlsx"; | |
//Path of output excel file | |
U16String outputReadAndManipulateExcel2016Charts = outDir + u"outputReadAndManipulateExcel2016Charts.xlsx"; | |
// Load sample Excel file containing Excel 2016 charts | |
Workbook workbook(sampleReadAndManipulateExcel2016Charts); | |
// Access the first worksheet which contains the charts | |
Worksheet worksheet = workbook.GetWorksheets().Get(0); | |
// Access all charts one by one and read their types | |
for (int i = 0; i < worksheet.GetCharts().GetCount(); i++) | |
{ | |
// Access the chart | |
Chart ch = worksheet.GetCharts().Get(i); | |
//Get the chart type | |
ChartType chartType = ch.GetType(); | |
//Convert chart type enum to string | |
U16String strChartType = u""; | |
switch (chartType) | |
{ | |
case Aspose::Cells::Charts::ChartType::BoxWhisker: | |
strChartType = u"BoxWhisker"; | |
break; | |
case Aspose::Cells::Charts::ChartType::Histogram: | |
strChartType = u"Histogram"; | |
break; | |
case Aspose::Cells::Charts::ChartType::Sunburst: | |
strChartType = u"Sunburst"; | |
break; | |
case Aspose::Cells::Charts::ChartType::Treemap: | |
strChartType = u"Treemap"; | |
break; | |
case Aspose::Cells::Charts::ChartType::Waterfall: | |
strChartType = u"Waterfall"; | |
break; | |
default: | |
break; | |
} | |
// Print chart type | |
std::cout << strChartType.ToUtf8() << std::endl; | |
// Change the title of the charts as per their types | |
U16String strTitle = u"Chart Type is " + strChartType; | |
ch.GetTitle().SetText(strTitle); | |
} | |
// Save the workbook | |
workbook.Save(outputReadAndManipulateExcel2016Charts); | |
Aspose::Cells::Cleanup(); |
控制台输出
这是上述示例代码在提供的示例Excel文件上执行时的控制台输出。
Waterfall
Treemap
Sunburst
Histogram
BoxWhisker