如何在 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 天的试用许可证。

相关推荐
进击的前栈19 分钟前
Flutter跨平台网络图片缓存库cached_network_image鸿蒙化适配指导手册
开发语言·网络·rust
老华带你飞24 分钟前
房屋租赁管理系统|基于java+ vue房屋租赁管理系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·后端
AC赳赳老秦36 分钟前
行业数据 benchmark 对比:DeepSeek上传数据生成竞品差距分析报告
开发语言·网络·人工智能·python·matplotlib·涛思数据·deepseek
TheITSea44 分钟前
Java中的Optional:从入门到精通
java·开发语言
糕......1 小时前
Java异常处理完全指南:从概念到自定义异常
java·开发语言·网络·学习
御水流红叶1 小时前
第七届金盾杯(第一次比赛)wp
开发语言·python
Lhan.zzZ1 小时前
Qt跨线程网络通信:QSocketNotifier警告及解决
开发语言·c++·qt
superman超哥1 小时前
仓颉性能优化秘籍:内联函数的优化策略与深度实践
开发语言·后端·性能优化·内联函数·仓颉编程语言·仓颉·仓颉语言
wangnaisheng1 小时前
【C#】RocketMQ、Redis的使用
c#
Wang's Blog1 小时前
Lua: 元表机制实现运算符重载与自定义数据类型
开发语言·lua