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 即可处理数据层次结构、图表渲染和文件输出。按照上面的示例,您可以快速生成专业的树状图可视化图表,用于财务报告、销售分析或任何层次结构数据集。

相关推荐
卸任10 小时前
Vibe coding工具使用心得
前端·ai编程
brien911 小时前
为什么模型标称 1M,Google Antigravity 聊到 256K 却突然失忆?我们给它做了个原生行内监控圆环
前端
修炼的dance11 小时前
录屏关键帧间隔多少合适?六档实测,2秒到10秒小了75.6%
前端
Lank_M11 小时前
关键帧从1秒拉到10秒,录屏小87.3%,摄像头小10.8%
前端
补码缩写11 小时前
用 ffprobe 拆录屏,八成字节在 29 个关键帧上
前端
百思不得小李11 小时前
一个复杂的动态表单是如何实现的
前端·设计模式
陈随易11 小时前
Cmder 停更 17 个月,2.0 支持 Windows Terminal
前端·后端·程序员
风骏时光牛马11 小时前
前沿视界
前端
kyriewen12 小时前
我扫了 814 个依赖,97 个还敢要 Node 10
前端·javascript·程序员
陈随易12 小时前
3000 万人在用的翻译插件,重写一遍就是一门生意
前端·后端·程序员