C#如何给PPT中图表添加趋势线详解

 更新时间:2021年09月13日 10:27:08   作者:E-iceblue  
趋势线是一条最为符合统计规律的回归线,方便我们提前了解数据如何变化的趋势,下面这篇文章主要给大家介绍了关于C#如何给PPT中图表添加趋势线的相关资料,需要的朋友可以参考下

前言

本文内容分享通过C#程序代码给PPT文档中的图表添加数据趋势线的方法。

支持趋势线的图表类型包括二维面积图、条形图、柱形图、柱形图、股价图、xy (散点图) 和气泡图中;不能向三维、堆积、雷达图、饼图、曲面图或圆环图的数据系列添加趋势线。可添加的趋势线类型包括6种,即多项式(Polynomial)趋势线、指数(Exponential)趋势线、线性(Linear)趋势线、对数(Logarithmic)趋势线、幂(Power)趋势线、移动平均(移动平均)趋势线。下面以柱形图表为例,添加趋势线。方法及步骤参考如下。

【程序环境】

  • Visual Studio 2017
  • .net framework 4.6.1
  • Power Point 2013 (.pptx)
  • PPT类库:Spire.Presentation for .NET

1.实现方法

通过调用Spire.Presentation.dll中Itrendline接口提供的方法AddTrendLine(TrendlinesType type)来添加趋势线,编辑代码前,请先按照如下第2点中的方法在程序中添加引用Spire.Presentation.dll。

2.关于PPT类库安装:可直接通过Nuget搜索安装到程序。

具体方法如下:

鼠标右键点击“引用”,“管理Nuget包”,然后按照下图步骤操作;

完成安装:

【C#】

using Spire.Presentation;
using Spire.Presentation.Charts;

namespace AddTrendline
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建Presentation类的实例
            Presentation ppt = new Presentation();
            //加载PowerPoint文档
            ppt.LoadFromFile("test.pptx");

            //获取第一张幻灯片
            ISlide slide = ppt.Slides[0];

            //获取幻灯片上的第一个图表
            IChart chart = (IChart)slide.Shapes[0];

            //给图表的第一个数据系列添加线性趋势线
            ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.Polynomial);//多项式趋势线
            //ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.Exponential);//指数趋势线
            //ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.Linear);//线性趋势线
            //ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.Logarithmic);//对数趋势线
            //ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.Power);//幂趋势线
            //ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.MovingAverage);//移动平均趋势线        

            //显示公式
            trendLine.displayEquation = true;
            //显示R平方值
            trendLine.displayRSquaredValue = true;

            //保存结果文档
            ppt.SaveToFile("AddTrendline.pptx", FileFormat.Pptx2013);
            System.Diagnostics.Process.Start("AddTrendline.pptx");
        }
    }
}

趋势线添加效果:

【vb.net】

Imports Spire.Presentation
Imports Spire.Presentation.Charts

Namespace AddTrendline
    Class Program
        Private Shared Sub Main(args As String())
            '创建Presentation类的实例
            Dim ppt As New Presentation()
            '加载PowerPoint文档
            ppt.LoadFromFile("test.pptx")

            '获取第一张幻灯片
            Dim slide As ISlide = ppt.Slides(0)

            '获取幻灯片上的第一个图表
            Dim chart As IChart = DirectCast(slide.Shapes(0), IChart)

            '给图表的第一个数据系列添加线性趋势线
            Dim trendLine As ITrendlines = chart.Series(0).AddTrendLine(TrendlinesType.Polynomial)
            '多项式趋势线
            'ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.Exponential); '指数趋势线
            'ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.Linear); '线性趋势线
            'ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.Logarithmic); '对数趋势线
            'ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.Power); '幂趋势线
            'ITrendlines trendLine = chart.Series[0].AddTrendLine(TrendlinesType.MovingAverage); '移动平均趋势线        
            '显示公式
            trendLine.displayEquation = True
            '显示R平方值
            trendLine.displayRSquaredValue = True

            '保存结果文档
            ppt.SaveToFile("AddTrendline.pptx", FileFormat.Pptx2013)
            System.Diagnostics.Process.Start("AddTrendline.pptx")
        End Sub
    End Class
End Namespace

总结

到此这篇关于C#如何给PPT中图表添加趋势线的文章就介绍到这了,更多相关C#给PPT图表添加趋势线内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • c# Newtonsoft 六个值得使用的特性(下)

    c# Newtonsoft 六个值得使用的特性(下)

    这篇文章主要介绍了c# Newtonsoft 六个值得使用的特性,文中示例代码非常详细,帮助大家更好的理解和学习,感兴趣的朋友可以了解下
    2020-06-06
  • 用C#缩小照片上传到各种空间的具体方法

    用C#缩小照片上传到各种空间的具体方法

    这篇文章介绍了用C#缩小照片的具体方法,有需要的朋友可以参考一下
    2013-09-09
  • C# wpf使用DockPanel实现制作截屏框

    C# wpf使用DockPanel实现制作截屏框

    做桌面客户端的时候有时需要实现截屏功能,能够在界面上框选截屏,本文就来为大家介绍一下wpf如何使用DockPanel制作截屏框吧,感兴趣的可以了解下
    2023-09-09
  • C#无边框窗体实现以及拖动代码

    C#无边框窗体实现以及拖动代码

    我们给大家分享了关于C#无边框窗体实现以及拖动代码,大家在程序设计的时候如果用的到一起跟着小编学习下吧。
    2018-03-03
  • C# 使用SpecFlow创建BDD测试用例的示例代码

    C# 使用SpecFlow创建BDD测试用例的示例代码

    这篇文章主要介绍了C# 使用SpecFlow创建BDD测试用例,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • C#实现图形区域组合操作的方法

    C#实现图形区域组合操作的方法

    这篇文章主要介绍了C#实现图形区域组合操作的方法,涉及C#操作图片实现组合操作的相关技巧,需要的朋友可以参考下
    2015-06-06
  • C#实现老板键功能的代码

    C#实现老板键功能的代码

    最近在做项目中遇到需要增加个老板键功能,找一惯的方式,开始从网络下手寻找: 关键字类似”C# 老板键“,一搜,一堆又一堆,然而出来的代码大多数都不是太合适,下面给大家分享下自己的解决方案已经一个网友的解决方案,有需要的小伙伴可以参考下。
    2015-05-05
  • 详解c# 接口IDisposable的用法

    详解c# 接口IDisposable的用法

    这篇文章主要介绍了详解c# 接口IDisposable的用法,帮助大家更好的理解和学习c#,感兴趣的朋友可以了解下
    2020-10-10
  • Unity Shader实现素描风格的渲染

    Unity Shader实现素描风格的渲染

    这篇文章主要为大家详细介绍了Unity Shader实现素描风格的渲染,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-04-04
  • C#之多余控件事件及代码删除问题

    C#之多余控件事件及代码删除问题

    这篇文章主要介绍了C#之多余控件事件及代码删除问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01

最新评论