如何在 C# 中分离饼图的某个区域

在处理 Excel 饼图时,我们可能需要将饼图的各个部分分离出来,以使它们更加醒目。Spire.XLS 提供了 Series.DataFormat.Percent 属性,使开发者能够将整个饼图拉开;同时还提供了 Series.DataPoints.DataFormat.Percent 属性,用于从整个饼图中单独拉开某一片区域。

本文将介绍如何使用 Spire.XLS 在 C# 中设置饼图各分片之间的分离宽度。

在 Microsoft Excel 中,我们可以在"设置数据系列格式"的"系列选项"中调整 饼图分离程度(Pie Explosion) 的百分比,从而控制图表中各部分之间的间距。

如何设置饼图各分片之间分离宽度的代码示例:

cs 复制代码
using Spire.Xls;
namespace ExplodePieChart
{

    class Program
    {

        static void Main(string[] args)
        {
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("Sample.xlsx");

            Worksheet ws = workbook.Worksheets[0];
            Chart chart = ws.Charts[0];

            // 设置饼图各分片之间的分离宽度
            for (int i = 0; i < chart.Series.Count; i++)
            {
                chart.Series[i].DataFormat.Percent = 20;
            }

            workbook.SaveToFile("result.xlsx", ExcelVersion.Version2010);

        }
    }
}

将整个饼图拉开后的效果截图如下:

从整个饼图中分离单个分片的代码示例:

cs 复制代码
using Spire.Xls;
namespace ExplodePieChart
{

    class Program
    {

        static void Main(string[] args)
        {
            {
                Workbook workbook = new Workbook();
                workbook.LoadFromFile("Sample.xlsx");

                Worksheet ws = workbook.Worksheets[0];
                Chart chart = ws.Charts[0];

                chart.Series[0].DataPoints[0].DataFormat.Percent = 20;

                workbook.SaveToFile("ExplodePieChart.xlsx", ExcelVersion.Version2013);
            }


        }
    }
}

将饼图中的单个分片拉开后的效果截图如下:

申请临时许可证

如果您想要去除生成文档中的评估提示,或解除功能限制,请为自己申请一个 30 天的试用许可证。

相关推荐
大模型码小白1 小时前
【Python零基础教程】继承、多态与魔法函数:面向对象编程三大核心特性详解
java·大数据·开发语言·人工智能·python·ai编程
段一凡-华北理工大学3 小时前
向量数据库实战:选型、调优与落地~系列文章12:文本分块策略实战:chunk_size 怎么选?重叠多少?
开发语言·数据库·后端·oracle·rust·工业智能体·高炉智能化
Ljwuhe3 小时前
C++——多态
开发语言·c++
心平气和量大福大4 小时前
C#-WPF-Window主窗体
开发语言·c#·wpf
白露与泡影4 小时前
Arthas 实战指南:从方法耗时定位到 JVM 变量热修改
服务器·jvm·c#
从零开始的代码生活_5 小时前
C++ 继承详解:访问控制、对象模型、菱形继承与设计取舍
开发语言·c++·后端·学习·算法
云小逸5 小时前
【C++ 第七阶段:模板、泛型编程与工程综合详解】
开发语言·c++
GIS阵地6 小时前
QgsSingleBandPseudoColorRenderer 完整详解(QGIS 3.40.13 C++)
开发语言·前端·c++·qt·qgis
yaoxin5211237 小时前
470. Java 反射 - Member 接口与 AccessFlag
java·开发语言·python
groundhappy7 小时前
idalib安装和codex ida-mcp配置
linux·开发语言·python