C# Excel 生成图表,添加趋势线、误差线
Excel图表能够将数据可视化,在图表中另行添加趋势线和误差线,可对数据进行进一步的数据分析和统计的可视化处理。Excel中的趋势线可用于趋势预测/回归分析,共6中类型:指数(X),线性(L),对数(0),多项式(P),幂(W),移动平均(M)。误差线可用于显示潜在的误差或相对于系列中每个数据标志的不确定程度。Excel中可设置误差线的显示方向:正负偏差,负偏差,正偏差;以及设置误差类型及误差量:固定值,百分比,标准偏差,标准误差,自定义类型。
本篇文章主要介绍,使用免费版的Free Spire.XLS(官方下载链接)在C#中独立创建Excel文档,生成折线图、柱状图,并添加趋势线和误差线。
需添加的命名空间
using Spire.Xls;
using System.Drawing;
第一步:使用free Spire.XLS独立创建Excel文件和表单。
Workbook workbook = new Workbook();workbook.CreateEmptySheets(1);Worksheet sheet = workbook.Worksheets[0];
第二步:为Excel单元格添加示例数据。
sheet.Name = "误差线和趋势线演示";sheet.Range["A1"].Value = "月份";sheet.Range["A2"].Value = "一月";sheet.Range["A3"].Value = "二月";sheet.Range["A4"].Value = "三月";sheet.Range["A5"].Value = "四月";sheet.Range["A6"].Value = "五月";sheet.Range["A7"].Value = "六月";sheet.Range["B1"].Value = "计划量";sheet.Range["B2"].NumberValue = 3.3;sheet.Range["B3"].NumberValue = 2.5;sheet.Range["B4"].NumberValue = 2.0;sheet.Range["B5"].NumberValue = 3.7;sheet.Range["B6"].NumberValue = 4.5;sheet.Range["B7"].NumberValue = 4.0;sheet.Range["C1"].Value = "实际量";sheet.Range["C2"].NumberValue = 3.8;sheet.Range["C3"].NumberValue = 3.2;sheet.Range["C4"].NumberValue = 1.7;sheet.Range["C5"].NumberValue = 3.5;sheet.Range["C6"].NumberValue = 4.5;sheet.Range["C7"].NumberValue = 4.3;
第三步:生成折线图,为其添加趋势线和
//生成折线图,设置位置Chart chart = sheet.Charts.Add(ExcelChartType.Line);chart.DataRange = sheet.Range["B1:B7"];chart.SeriesDataFromRange = false;chart.TopRow = 6;chart.BottomRow = 25;chart.LeftColumn = 2;chart.RightColumn = 9;chart.ChartTitle = "百分比正偏差误差线和对数趋势线示例";chart.ChartTitleArea.IsBold = true;chart.ChartTitleArea.Size = 12;Spire.Xls.Charts.ChartSerie cs1 = chart.Series[0]; cs1.CategoryLabels = sheet.Range["A2:A7"];//添加对数趋势线cs1.TrendLines.Add(TrendLineType.Logarithmic);//添加10%正偏差误差线cs1.ErrorBar(true, ErrorBarIncludeType.Plus, ErrorBarType.Percentage,10);
第四步:生成柱状图,并为其添加趋势线和误差线。
//生成柱状图作为对照组Chart chart2 = sheet.Charts.Add(ExcelChartType.ColumnClustered);chart2.DataRange = sheet.Range["B1:C7"];chart2.SeriesDataFromRange = false;chart2.TopRow = 6;chart2.BottomRow = 25;chart2.LeftColumn = 10;chart2.RightColumn = 17;chart2.ChartTitle = "正负标准误差误差线和指数趋势线示例";chart2.ChartTitleArea.IsBold = true;chart2.ChartTitleArea.Size = 12;Spire.Xls.Charts.ChartSerie cs2 = chart2.Series[0];cs2.CategoryLabels = sheet.Range["A2:A7"];//添加标准误差负误差0.3的误差线cs2.ErrorBar(true, ErrorBarIncludeType.Minus, ErrorBarType.StandardError, 0.3);//添加指数趋势线cs2.TrendLines.Add(TrendLineType.Exponential);Spire.Xls.Charts.ChartSerie cs3 = chart2.Series[1];//添加标准误差正负误差0.5的误差线cs3.ErrorBar(true, ErrorBarIncludeType.Both, ErrorBarType.StandardError, 0.5
第五步:保存文档。
workbook.SaveToFile("S3.xlsx", ExcelVersion.Version2010);System.Diagnostics.Process.Start("S3.xlsx");
效果图:
纯图表:
完整代码:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Spire.Xls;
using System.Drawing;namespace ConsoleApplication2
{class Program{static void Main(string[] args){Workbook workbook = new Workbook();workbook.CreateEmptySheets(1);Worksheet sheet = workbook.Worksheets[0];sheet.Name = "误差线和趋势线演示";sheet.Range["A1"].Value = "月份";sheet.Range["A2"].Value = "一月";sheet.Range["A3"].Value = "二月";sheet.Range["A4"].Value = "三月";sheet.Range["A5"].Value = "四月";sheet.Range["A6"].Value = "五月";sheet.Range["A7"].Value = "六月";sheet.Range["B1"].Value = "计划量";sheet.Range["B2"].NumberValue = 3.3;sheet.Range["B3"].NumberValue = 2.5;sheet.Range["B4"].NumberValue = 2.0;sheet.Range["B5"].NumberValue = 3.7;sheet.Range["B6"].NumberValue = 4.5;sheet.Range["B7"].NumberValue = 4.0;sheet.Range["C1"].Value = "实际量";sheet.Range["C2"].NumberValue = 3.8;sheet.Range["C3"].NumberValue = 3.2;sheet.Range["C4"].NumberValue = 1.7;sheet.Range["C5"].NumberValue = 3.5;sheet.Range["C6"].NumberValue = 4.5;sheet.Range["C7"].NumberValue = 4.3; Chart chart = sheet.Charts.Add(ExcelChartType.Line);chart.DataRange = sheet.Range["B1:B7"];chart.SeriesDataFromRange = false;chart.TopRow = 6;chart.BottomRow = 25;chart.LeftColumn = 2;chart.RightColumn = 9;chart.ChartTitle = "百分比正偏差误差线和对数趋势线示例";chart.ChartTitleArea.IsBold = true;chart.ChartTitleArea.Size = 12;Spire.Xls.Charts.ChartSerie cs1 = chart.Series[0]; cs1.CategoryLabels = sheet.Range["A2:A7"];cs1.TrendLines.Add(TrendLineType.Logarithmic);cs1.ErrorBar(true, ErrorBarIncludeType.Plus, ErrorBarType.Percentage, 10);Chart chart2 = sheet.Charts.Add(ExcelChartType.ColumnClustered);chart2.DataRange = sheet.Range["B1:C7"];chart2.SeriesDataFromRange = false;chart2.TopRow = 6;chart2.BottomRow = 25;chart2.LeftColumn = 10;chart2.RightColumn = 17;chart2.ChartTitle = "正负标准误差误差线和指数趋势线示例";chart2.ChartTitleArea.IsBold = true;chart2.ChartTitleArea.Size = 12;Spire.Xls.Charts.ChartSerie cs2 = chart2.Series[0];cs2.CategoryLabels = sheet.Range["A2:A7"];cs2.ErrorBar(true, ErrorBarIncludeType.Minus, ErrorBarType.StandardError, 0.3);cs2.TrendLines.Add(TrendLineType.Exponential);Spire.Xls.Charts.ChartSerie cs3 = chart2.Series[1];cs3.ErrorBar(true, ErrorBarIncludeType.Both, ErrorBarType.StandardError, 0.5);workbook.SaveToFile("S3.xlsx", ExcelVersion.Version2010);System.Diagnostics.Process.Start("S3.xlsx");}}
}
感谢阅读,如有建议或意见,还望指出。
C# Excel 生成图表,添加趋势线、误差线相关推荐
- C# Excel 为图表添加趋势线、误差线
Excel图表能够将数据可视化,在图表中另行添加趋势线和误差线,可对数据进行进一步的数据分析和统计的可视化处理.Excel中的趋势线可用于趋势预测/回归分析,共6中类型:指数(X),线性(L),对数( ...
- excel生成图表_Excel图表比较高分和低分
excel生成图表 Last weekend, I helped someone who needed a chart for a fantasy football league, to show t ...
- js插件---在线类似excel生成图表插件解决方案
js插件---在线类似excel生成图表插件解决方案 参考文章: (1)js插件---在线类似excel生成图表插件解决方案 (2)https://www.cnblogs.com/Renyi-Fan/ ...
- 计算机折线图教程,怎么在电脑版Excel中将图表添加
怎么在电脑版Excel中将图表添加 腾讯视频/爱奇艺/优酷/外卖 充值4折起 电脑版Excel软件被很多人使用,用来编辑数据等, 为了可以更好地反映数据的比较或趋势,因此想要添加图表,但是却不知道如何 ...
- 【画图】 excel的图表添加误差线
来源百度: 我们的目标是做成这样: 但目前我们还是这样: 第一步,我们在图表的蓝色条形柱上点右键,选择"数据系列格式",注意一定要在蓝色条形柱上点,否则后果自负, 第二步,在打开的 ...
- C# Excel 为图表添加模拟运算表
Excel中的图表能够将数据可视化,方便我们比较分析数据.但也有一定的局限,例如:不能够直接从图表中读出原来数据的准确值.Excel提供的解决方案是,在图表下方添加一个模拟运算表,即在坐标轴下方添加包 ...
- POI 控制 excel 生成图表的方式(二)
主要尝试 vb.jni 调用 excel 的 图表.实现了两种方式. 一 . java调用 vbs 1.思路: java 调用 vbs, , vbs调用 excel的宏. 2.具体步骤: (1) 创建 ...
- excel怎么一个格子斜分_怎样在EXCEL表格中添加斜分线 这几步你要了解
当一个单元格中添加了斜分线以后,左下方的可以显示一个词,右上方也可以显示一个词.那么,如何在excel表格中添加斜分线呢,下面来看看添加的步骤. 工具/材料 excel 操作方法 01 打开excel ...
- python excel生成图表_python excel 之 按格式生成图表和数据
python excel 针对python 对excel的操作目前有已经有很多库可以使用, 比如最常用的读写库xlrd,xlwt,xlutils 对xlsx.xlsm读写的openpyxl 针对xls ...
最新文章
- 读阿里机器学习平台的一些总结
- 将redis作为windows系统的系统服务
- 字符串格式化---StrFormatter
- oracle中execute函数,oracle Execute Immediate(sql语句)
- LeetCode 1456. 定长子串中元音的最大数目(滑动窗口)
- 【XML】XML元素属性详解
- Permutation(构造+思维)
- 投资一个五星级酒店需要多钱?多长时间能回本?
- android打开视频噔_如何运行两种游戏数据包(视频教程)
- 191106_爬数据绘图
- 通过napalm-huawei-vrp模块对华为交换机信息进行分析(ENSP模拟器)
- 在学校外边找了份工作
- 【考研计算机网络】 强化笔记
- 7-5 统计素数并求和
- java数组和集合的区别_java中数组和集合的区别是什么?
- 51单片机--蜂鸣器
- 预言机(Oracle)
- 深圳一普通中学老师工资单曝光,秒杀程序员
- 大学计算机课程学习路线 左飞老师
- 主板烧糊,大短路,不开机且烧糊成碳了还会导电