C# 创建EXCEL图表并保存为图片
数据表格能够清晰的呈现数据信息,但是我们对于一些繁杂多变的数据想要很直观的看到数据变化走势或者数据的占比时,数据图表会更具代表性,并且在呈现数据信息上也更形象,也能获取更多纯数字信息所不能直接展现的信息。在下面的代码中,将向您展示如何通过使用免费的Free Spire XLS for .NET组件来实现。
原数据表格:

C#
using Spire.Xls;
using System.Drawing;
using System.Drawing.Imaging; namespace CreateChart_XLS
{
class Program
{
static void Main(string[] args)
{
//创建一个Workbook类实例,加载Excel文档
Workbook workbook = new Workbook();
workbook.LoadFromFile(@"C:\Users\Administrator\Desktop\Sample.xlsx"); //获取第一个工作表
Worksheet sheet = workbook.Worksheets[]; //设置工作表的名称
sheet.Name = "柱状图";
sheet.GridLinesVisible = false; //创建柱状图
Chart chart = sheet.Charts.Add(ExcelChartType.ColumnClustered); //指定用于生成图表的数据区域
chart.DataRange = sheet.Range["A2:G6"];
chart.SeriesDataFromRange = false; //指定图表所在的位置
chart.LeftColumn = ;
chart.TopRow = ;
chart.RightColumn = ;
chart.BottomRow = ; //设置图表的名称及字体格式
chart.ChartTitle = "上半年产品销售情况(单位:万美元)";
chart.ChartTitleArea.IsBold = true;
chart.ChartTitleArea.Size = ; //设置X轴坐标名称及字体格式
chart.PrimaryCategoryAxis.Title = "产品类别";
chart.PrimaryCategoryAxis.Font.IsBold = true;
chart.PrimaryCategoryAxis.TitleArea.IsBold = false; //设置Y轴坐标名称及字体格式
chart.PrimaryValueAxis.Title = "销售额";
chart.PrimaryValueAxis.HasMajorGridLines = false;
chart.PrimaryValueAxis.TitleArea.TextRotationAngle = ;
chart.PrimaryValueAxis.MinValue = 0.5;
chart.PrimaryValueAxis.TitleArea.IsBold = false; //设置图例的位置
chart.Legend.Position = LegendPositionType.Right; //保存文档
workbook.SaveToFile("ColumnChart.xlsx", ExcelVersion.Version2013); //加载生成图表后的Excel文档
workbook.LoadFromFile("ColumnChart.xlsx"); //遍历工作簿,诊断是否包含图表
Image[] images = workbook.SaveChartAsImage(sheet); for (int i = ; i < images.Length; i++)
{
//将图表保存为图片
images[i].Save(string.Format("img-{0}.png", i), ImageFormat.Png);
}
}
}
}
生成的图表文件及图片如下图所示:


组件获取地址:https://www.e-iceblue.cn/Downloads/Free-Spire-XLS-NET.html
以上是对Excel数据表格生成并转化为图表的全部操作,希望对你有所帮助,欢迎转载(转载请注明出处)
感谢浏览!
C# 创建EXCEL图表并保存为图片的更多相关文章
- c# 创建Excel com加载项图片对象批量操作
技术含量较低,主要是通过VBA代码转换成c#代码而来,从而实现图片批量插入.删除.另存为的批量操作,增加文档使用的通用性. 插件主要界面如下: 主要代码如下: private void button8 ...
- 【原创】.NET读写Excel工具Spire.Xls使用(5)重量级的Excel图表功能
本博客所有文章分类的总目录:http://www.cnblogs.com/asxinyu/p/4288836.html .NET读写Excel工具Spire.Xls使用文章 ...
- ECharts外部调用保存为图片操作及工作流接线mouseenter和mouseleave由于鼠标移动速度过快导致问题解决办法
记录两个项目开发中遇到的问题,一个是ECharts外部调用保存为图片操作,一个是workflow工作流连接曲线onmouseenter和onmouseleave事件由于鼠标移动过快触发问题. 一.外部 ...
- 如何把Excel中的单元格等对象保存成图片
对于Excel中的很多对象,比如单元格(Cell),图形(shape),图表(chart)等等,有时需要将它们保存成一张图片.就像截图一样. 最近做一个Excel相关的项目,项目中遇到一个很变态的需求 ...
- Excel图表转成图片
关于excel 图表转成图片 知识点:excel 生成的图表不是图片 尝试. 通过Java调用POI接口挺难把excel生成的图表转成图片导出来 ps. 其它生成图表的工具,如jfre ...
- [Swift通天遁地]三、手势与图表-(7)创建饼形图表并导出图表为PNG图片
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- Java 将 PPT 形状(表格、文本框、心形、图表等)保存成图片
MS PowerPoint中的表格.文本框.心形.图表.图片等均可以称为形状,将这些形状保存成图片,便可分类储存,方便日后查找,再利用. 本文将介绍如何使用 Spire.Presentation fo ...
- 将Excel表格保存为图片
如何将Excel表格保存为图片,可参见以下几种方法: 1.借助其它办法软件,例如Word或PPT. 步骤:选中Excel中需要被保存成图片的内容,Ctrl+C进行复制,打开Word或PPT办公软件,鼠 ...
- JAVA生成EXCEL图表
跟据客户的要求,需要开发一套包括图形的报表,还需要导出WORD 图表需要这样: 这样: 这样: 还有这样: 接下来是实现思路: 以往用的最多的就是JFreechart,手上也有实现各种图形的资源,但是 ...
随机推荐
- 【原创】XAF 常见错误以及对应解决方法
1.Appearance Criteria设置错误 Exception occurs while assigning the 'DetailView, ID:xxx_DetailView' view ...
- 删除 id 列表 存进数据库
当图片写的传id的时候 用着方法存进数据库
- 课堂作业Complex类的实现
#include <iostream> #include <cmath> using namespace std; class Complex{ public: Complex ...
- 文件访问时间简记(Modify time 和 Change time)
[root@77-29-68-bx-core]# stat hql.out File: 'hql.out' Size: 13750 Blocks: 32 IO Block: 4096 regular ...
- python语法_模块_time_datetime_random
模块:可以被公共调用的. time import time print(time.time()) 时间戳方式显示时间. time.sleep(3) 休眠3秒 time.clock() 计算cpu执行时 ...
- svn 安装及更新web库
安装: apt-get update //更新apt-get库 apt-get install subversion 安装SVN mkdir /home/svn ...
- Hadoop源码分析(3): Hadoop的运行痕迹
在使用hadoop的时候,可能遇到各种各样的问题,然而由于hadoop的运行机制比较复杂,因而出现了问题的时候比较难于发现问题. 本文欲通过某种方式跟踪Hadoop的运行痕迹,方便出现问题的时候可以通 ...
- Foxmail6.5 ERR LOGIN FAIL 重新输入口令
这几天 Foxmail 6.5 收邮件不正常,一直报告ERR LOGIN FAIL,要求重新输入口令. 但输入正确的口令也无法收邮件. 反复折腾,最后发现如下设置即可: 邮箱账户设置 --> 邮 ...
- js 格式化数字,格式化金额:
js 格式化数字,格式化金额: function number_format(number, decimals, dec_point, thousands_sep) { /* * 参数说明: * nu ...
- [Java]LeetCode138. 复制带随机指针的链表 | Copy List with Random Pointer
A linked list is given such that each node contains an additional random pointer which could point t ...