Excel处理控件Aspose.Cells教程:使用C#在Excel中创建树状图

使用树状图可视化层级数据,可以使复杂的信息一目了然。本文将介绍如何使用 C# 和**Aspose.Cells for .NET**在 Excel 中创建树状图。本指南包含完整的可运行代码示例、自定义图表外观的技巧以及快速入门的资源。

Aspose.Cells官方试用版免费下载

用于创建树状图的 C# Excel 库

Aspose.Cells for .NET 是一个功能全面的 Excel 操作库,允许开发人员在不使用 Microsoft Office 的情况下创建、编辑和渲染 Excel 文件。它支持多种图表类型,包括树状图,该图表非常适合可视化层级结构,例如按地区、产品类别或组织结构图划分的销售额。

使用**Aspose.Cells for .NET** 的主要优势:

  • 丰富的 API -- 完全访问工作簿、工作表、单元格和图表对象。
  • 高性能------能够高效处理大型工作簿和数据集。
  • 无外部依赖项-- 可在任何支持 .NET 的平台上运行。
  • 多种导出格式-- 保存为 XLSX、XLS、CSV、PDF、PNG 等格式。

入门很简单:

  1. 从**慧都网Aspose.Cells 页面**下载库。

  2. 安装 NuGet 包:

复制代码
PM> Install-Package Aspose.Cells

使用 C# 在 Excel 中创建树状图

如何构建树状图

以下示例演示了如何操作:

  1. 创建一个新的工作簿。
  2. 在工作表中填充层级数据。
  3. 添加树状图。
  4. 配置剧集、标题和格式。
  5. 将工作簿保存为 Excel 文件。

注意------该代码是完全独立的,可以使用 .NET 6.0 或更高版本进行编译。

复制代码
// ------------------------------
// 1. Create a new workbook
// ------------------------------
var workbook = new Workbook();
var sheet = workbook.Worksheets[0];
sheet.Name = "SalesData";

// -------------------------------------------------
// 2. Fill the worksheet with hierarchical sample data
// -------------------------------------------------
//   A          B          C          D          E
// -------------------------------------------------
//   Region    Country    Category   Subcategory  Sales
//   Europe    Germany    Electronics Phones      120000
//   Europe    Germany    Electronics Laptops     85000
//   Europe    France     Furniture  Chairs       45000
//   Asia      China      Electronics Phones      200000
//   Asia      China      Furniture  Tables       95000
//   America   USA        Electronics TVs        175000
// -------------------------------------------------
string[,] data = new string[,]
{
    { "Region", "Country", "Category", "Subcategory", "Sales" },
    { "Europe", "Germany", "Electronics", "Phones", "120000" },
    { "Europe", "Germany", "Electronics", "Laptops", "85000" },
    { "Europe", "France", "Furniture", "Chairs", "45000" },
    { "Asia", "China", "Electronics", "Phones", "200000" },
    { "Asia", "China", "Furniture", "Tables", "95000" },
    { "America", "USA", "Electronics", "TVs", "175000" }
};

for (int row = 0; row < data.GetLength(0); row++)
{
    for (int col = 0; col < data.GetLength(1); col++)
    {
        sheet.Cells[row, col].PutValue(data[row, col]);
    }
}

// -------------------------------------------------
// 3. Add a Treemap chart
// -------------------------------------------------
// The chart will be placed starting at row 9, column 0
// and will occupy rows 9?30 and columns 0?10.
int chartIndex = sheet.Charts.Add(ChartType.Treemap, 9, 0, 30, 10);
Chart treemap = sheet.Charts[chartIndex];

// Set chart title
treemap.Title.Text = "Global Sales Treemap";

// -------------------------------------------------
// 4. Define the series for the Treemap
// -------------------------------------------------
// The data range includes columns A?E (rows 2?7) without the header.
// Category data (hierarchy) is taken from columns A?D.
// Values are taken from column E.
treemap.NSeries.Add("=SalesData!$E$2:$E$7", true);
treemap.NSeries.CategoryData = "=SalesData!$A$2:$D$7";

// -------------------------------------------------
// 5. Customize the appearance (optional)
// -------------------------------------------------
// Example: set a graduated fill based on sales values.
treemap.NSeries[0].IsColorVaried = true; // Vary color by value

// -------------------------------------------------
// 6. Save the workbook
// -------------------------------------------------
string outputPath = "TreemapChart_Output.xlsx";
workbook.Save(outputPath);

Console.WriteLine($"Treemap chart created successfully. File saved to: {outputPath}");

关键步骤说明

目的
1 实例化一个新的对象Workbook并获取第一个工作表。
2 将分层销售数据填充到工作表中。第一行包含标题。
3 添加一个图表类型ChartType.Treemap。图表的位置和大小由传递给的行/列索引定义Charts.Add。
4 添加一个使用销售额作为值范围(E2:E7)和层次结构(A2:D7)作为类别数据的单个系列。
5 启用数据标签,使其同时显示数值和类别名称,并根据销售额激活颜色变化。
6 将工作簿保存为 XLSX 文件。生成的文件可在 Excel 中打开以查看树状图。

结论

使用 Aspose.Cells for .NET 创建树状图非常简单,只需几行代码即可完成。该库无需 Microsoft Office 即可处理数据层次结构、图表渲染和文件输出。按照上面的示例,您可以快速生成专业的树状图可视化图表,用于财务报告、销售分析或任何层次结构数据集。

相关推荐
helloworddm2 小时前
CalculateGrainDirectoryPartition
服务器·c#·.net
咬人喵喵2 小时前
CSS Flexbox:拥有魔法的排版盒子
前端·css
LYFlied2 小时前
TS-Loader 源码解析与自定义 Webpack Loader 开发指南
前端·webpack·node.js·编译·打包
yzp01122 小时前
css收集
前端·css
暴富的Tdy2 小时前
【Webpack 的核心应用场景】
前端·webpack·node.js
遇见很ok2 小时前
Web Worker
前端·javascript·vue.js
风舞红枫2 小时前
前端可配置权限规则案例
前端
zhougl9963 小时前
前端模块化
前端
E_ICEBLUE3 小时前
PDF 文件为什么打不开?常见原因与解决思路
pdf·c#·html