`

C# 添加、修改、删除Excel图表数据标签

阅读更多

图表中,图表数据标签以数据化形式表现图表中的特定数据,可增强图表的可读性。我们可以对图表添加数据标签,也可以对已有的数据标签进行修改或者删除,下面将通过C#代码形式来实现。

使用工具:Spire.XLS for .NET pack

dll文件获取及引用:

 

方法1通过官网下载包。下载后,解压文件,安装Bin文件夹下的程序。安装后,将安装路径下Bin文件夹下的Spire.Xls.dll文件添加引用至vs项目程序。如下所示:


 

方法2可通过Nuget下载。

 

 

C# 示例

【添加数据标签】

using Spire.Xls;
using Spire.Xls.Charts;
using System.Drawing;


namespace AddDataLables
{
    class Program
    {
        static void Main(string[] args)
        {
            //加载测试文档
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("test.xlsx");

            //获取第一个工作薄以及其中的第一个图表
            Worksheet sheet = workbook.Worksheets[0];
            Chart chart = sheet.Charts[0];

            //获取图表中的指定系列
            ChartSerie serie1 = chart.Series[1];
            //添加数据标签,并设置数据标签样式
            serie1.DataPoints.DefaultDataPoint.DataLabels.HasValue = true;
            serie1.DataPoints.DefaultDataPoint.DataLabels.FrameFormat.Fill.FillType = ShapeFillType.SolidColor;
            serie1.DataPoints.DefaultDataPoint.DataLabels.FrameFormat.Fill.ForeColor = Color.White;
            serie1.DataPoints.DefaultDataPoint.DataLabels.FrameFormat.Border.Pattern = ChartLinePatternType.Solid;
            serie1.DataPoints.DefaultDataPoint.DataLabels.FrameFormat.Border.Color = Color.Green;


            ////使用文档中其他单元格的数据自定义datalabel
            //ChartSerie serie2 = chart.Series[2];
            //serie2.DataPoints.DefaultDataPoint.DataLabels.ValueFromCell = sheet.Range["B4:E4"];
            ////添加数据标注
            //serie2.DataPoints.DefaultDataPoint.DataLabels.HasWedgeCallout = true;
           
            //保存文档
            workbook.SaveToFile("AddDataLable.xlsx");
            System.Diagnostics.Process.Start("AddDataLable.xlsx");
        }
    }
}

 

数据标签效果:


 

数据标注效果:


 

 【编辑/修改数据标签】

 

这里以上面代码中添加的数据标注为例,进行修改等操作。

using Spire.Xls;
using Spire.Xls.Charts;
using System.Drawing;


namespace ModifyDataLable
{
    class Program
    {
        static void Main(string[] args)
        {
            //加载文档
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("AddDataLable.xlsx");

            //获取第一个工作表以及表里面的第一个图表
            Worksheet sheet = workbook.Worksheets[0];
            Chart chart = sheet.Charts[0];

            //获取图表系列及数据标签
            ChartSerie chartSeries = chart.Series[2];
            ChartDataLabels cslabel = chartSeries.DataPoints[1].DataLabels;


            cslabel.HasLegendKey = true;//设置显示图例项标示
            cslabel.Position = DataLabelPositionType.Center;//设置数据标签的位置居中

            //自定义数据标签的位置,默认的原点在图表左上角;
            cslabel.IsYMode = true;
            cslabel.IsXMode = true;
            cslabel.X = 1100;
            cslabel.Y = 400;

            //设置显示引导线(任意设置一个DataPoint会对整个系列生效,但是只有自定义数据标签位置之后才会显示效果)
            cslabel.ShowLeaderLines = true;

            //取消楔形标注(任意设置一个DataPoint会对整个系列生效)
            cslabel.HasWedgeCallout = false;

            //保存
            workbook.SaveToFile("ModifyDatalable.xlsx");
            System.Diagnostics.Process.Start("ModifyDatalable.xlsx");
        }
    }
}

 数据标签修改效果:


 

   【删除数据标签】

using Spire.Xls;
using Spire.Xls.Charts;

namespace DeleteDataLable
{
    class Program
    {
        static void Main(string[] args)
        {
            //加载文档
            Workbook workbook = new Workbook();
            workbook.LoadFromFile("AddDataLable.xlsx");

            //获取第一个工作表以及表里面的第一个图表
            Worksheet sheet = workbook.Worksheets[0];
            Chart chart = sheet.Charts[0];

            //删除所有系列的数据标签
            for (int i = 0; i < chart.Series.Count; i++)
            {
                ChartSerie chartSeries = chart.Series[i];
                //删除所有数据标签
                chartSeries.DataPoints.Clear();
            }


            //删除指定数据系列的数据标签
            //ChartSerie chartSeries = chart.Series[2];
            //chartSeries.DataPoints.Clear();


            //删除指定系列中数据标签的指定值
            //ChartSerie chartSeries = chart.Series[2];
            //ChartDataLabels cslabel = chartSeries.DataPoints[0].DataLabels;
            //cslabel.Text = " ";
            //cslabel.HasLegendKey = false;


            //保存文档
            workbook.SaveToFile("RemoveDataLable.xlsx");
            System.Diagnostics.Process.Start("RemoveDataLable.xlsx");
        }
    }
}

 

运行程序后可查看数据标签删除效果。

 

 

(本文完)

 

  • 大小: 20.2 KB
  • 大小: 50.4 KB
  • 大小: 52.2 KB
  • 大小: 51.6 KB
0
0
分享到:
评论

相关推荐

    C# 添加、修改以及删除Excel迷你图表的实现方法

    本文将介绍C#如何实现为表格数据生成迷你图表,以及修改和删除迷你图表的方法。下面将详细讲述。 所用组件工具:Spire.XLS for .NET 原Excel图表: 一、添加迷你图表(折线图、柱形图、盈亏图) 1.添加命名空间 ...

    C#excel的导入导出控件NOPI

    3. 修改Excel文件,如添加、删除、移动工作表,修改单元格内容、样式和公式。 4. 导入数据到Excel,例如从数据库或其他数据源批量填充数据。 5. 导出数据到Excel,将应用程序中的数据以Excel格式导出,方便用户查看...

    Aspose无需模板导出Excel带Chart

    在创建图表时,可以指定数据源(通常来自某个数据区域的单元格),以及图表类型、标题、轴标签、图例等属性。 以下是一个简化的示例代码,展示如何使用Aspose.Cells创建一个带有多个图表的工作表: ```csharp ...

    c# 多种操作类库

    6. **Excel导出**:C#中可以使用EPPlus库来处理Excel文件,该库支持Excel 2007及更高版本的Open XML格式,可以方便地创建、读取和修改Excel工作簿,包括添加样式、公式等。 7. **配置文件操作类**:System....

    Excel 操作工具

    "Excel操作"标签进一步证实了这个库的核心特性,即对Excel文件进行各种操作,这可能包括但不限于创建新的工作簿、添加工作表、读取单元格数据、修改单元格样式、公式计算、数据排序和过滤等。 Aspose是一个知名的...

    aspose.公司PPT.C#调用源码

    本文将深入探讨Aspose.Slides for C#的使用,它是一个强大的API,允许开发者在C#环境中创建、修改和操作PowerPoint演示文稿。我们将通过标题、描述以及提供的文件名,来解析其主要功能和使用方法。 标题中的"aspose...

    DevExpress XtraCharts_中文帮助文档

    例如,通过代码动态添加或删除系列,修改数据点的值,设置图表的各种属性,以及响应用户的交互事件。 总结,DevExpress XtraCharts中文帮助文档详细介绍了如何使用这个图表组件来创建专业且美观的数据可视化应用。...

    Interop.Excel

    这个组件,即Interop.Excel.dll,允许程序员使用C#、VB.NET或其他.NET语言来创建、修改和操作Excel工作簿、工作表、单元格等对象,从而实现自动化处理Excel数据和报表生成。 在.NET框架中,Interop服务提供了一个...

    LT-xlsdemo

    这些库提供了读取单元格数据、修改公式、添加图表等功能。在“LT-xlsdemo”中,开发者可能演示了如何创建、读取、更新和删除Excel工作簿中的数据。 2. **XML数据处理**:XML是一种可扩展标记语言,常用于结构化数据...

    Microsoft.Office.Interop.Graph.rar

    2. 修改现有图表:更新图表的数据源,改变颜色方案,添加或删除系列,调整轴的范围等。 3. 控制图表元素:操作图表标题、图例、数据标签、网格线等。 4. 自动化处理:在批量处理或自动化脚本中,通过编程方式快速...

    spire.xls-fe_9.2.zip

    4. **图表操作**:支持创建各种类型的图表,如柱状图、饼图、折线图等,并可以进行定制化设置,如更改系列、调整轴标签等。 5. **图像处理**:可以在工作簿中插入和编辑图片,如调整大小、位置,甚至应用图像效果。...

    NPOI开发包

    对于Excel,NPOI提供了创建、读取、修改和保存工作簿、工作表、单元格等的能力,包括样式、公式、图表、图像等复杂元素。 关于压缩包子文件的文件名称列表"bin",这通常包含的是编译后的NPOI库文件,例如DLL(动态...

    学生成绩管理系统

    3. **学生管理**:系统应能添加、编辑和删除学生记录,包括学生的基本信息,如姓名、班级、学号等。 4. **成绩录入**:教师可以输入或导入学生的各项成绩,如平时成绩、期中成绩、期末成绩等,系统可能提供了数据...

Global site tag (gtag.js) - Google Analytics