目的:

1.根据模板里面的excel数据信息,动态创建line chart

2.linechart 的样式改为灰色

3.以流的形式写到客户端,不管客户端是否装excel,都可以导出到到客户端

4.使用Aspose.Cells的基本功能

5.使用mvc测试代码

导出到excel里面的效果图

excel里面的数据源sheet2

	2001	2002	2003	2004	2005	2006	2007
中原地产 10 20 30 40 50 70 80
上海中原 30 80 44 55 88 90 120
河北中原 24 45 55 66 88 90 70
南京中原 44 55 66 77 88 99 90
背景中原 11 34 36 37 33 32 21
中原地产2 10 20 30 40 50 70 80
上海中原3 30 80 44 55 88 90 120
上海中原4 24 45 55 66 88 90 70
上海中原5 44 55 66 77 88 99 90
上海中原6 11 34 36 37 33 32 21
上海中原7 10 20 30 40 50 70 80
上海中原8 30 80 44 55 88 90 120
上海中原9 24 45 55 66 88 90 70
上海中原10 44 55 66 77 88 99 90
上海中原11 11 34 36 37 33 32 21
中原地产12 10 20 30 40 50 70 80
上海中原13 30 80 44 55 88 90 120
上海中原14 24 45 55 66 88 90 70
上海中原15 44 55 66 77 88 99 90
上海中原16 11 34 36 37 33 32 21
上海中原17 10 20 30 40 50 70 80
上海中原18 30 80 44 55 88 90 120
上海中原19 24 45 55 66 88 90 70
上海中原21 44 55 66 77 88 99 90
上海中原22 11 34 36 37 33 32 21

  

入口方法:

public ActionResult excels()
{
WorkbookDesigner designer = new WorkbookDesigner();
string path = Server.MapPath("/Templete/11111.xls");
designer.Workbook.Open(path);
Workbook workbook = designer.Workbook;
//创建一个chart到页面
CreateStaticReport1(workbook);
designer.Process();
//将流文件写到客户端流的形式写到客户端,名称是_report.xls
designer.Save("_report.xls", SaveType.OpenInExcel, FileFormatType.Excel2003, System.Web.HttpContext.Current.Response);
Response.Flush();
Response.Close();
designer = null;
// Response.End();
return View("getexcel"); }

生成chart方法

        private void CreateStaticReport1(Workbook workbook)
{
//创建一个折线图
workbook.Worksheets[0].Charts.Add(ChartType.Line, 1, 1, 25, 10);
Aspose.Cells.Chart chart = workbook.Worksheets[0].Charts[0]; //折线区域竖线设置为显示颜色设置为灰色
chart.CategoryAxis.MajorGridLines.IsVisible = true;
chart.CategoryAxis.MajorGridLines.Color = Color.Gray;
//折线区域设置横着的网格线显示
chart.MajorGridLines.IsVisible = true;
chart.MajorGridLines.Color = Color.Gray; //设置title样式
chart.Title.Text = "Sales By Region For Years";
chart.Title.TextFont.Color = Color.Gray;
chart.Title.TextFont.IsBold = true;
chart.Title.TextFont.Size = 12; //Set Properties of nseries
chart.NSeries.Add("Sheet2!B2:H26", false); //Set NSeries Category Datasource
chart.NSeries.CategoryData = "Sheet2!B1:H1"; Cells cells = workbook.Worksheets[1].Cells;
//loop over the Nseriese
for (int i = 0; i < chart.NSeries.Count; i++)
{
//设置每条折线的名称
chart.NSeries[i].Name = cells[i + 1, 0].Value.ToString(); //设置线的宽度
chart.NSeries[i].Line.Weight = WeightType.MediumLine; //设置每个值坐标点的样式
chart.NSeries[i].MarkerStyle = ChartMarkerType.Circle;
chart.NSeries[i].MarkerSize = 5;
chart.NSeries[i].MarkerBackgroundColor = Color.White;
chart.NSeries[i].MarkerForegroundColor = Color.Gray; //每个折线向显示出值
chart.NSeries[i].DataLabels.IsValueShown = true;
chart.NSeries[i].DataLabels.TextFont.Color = Color.Gray; } //设置x轴上数据的样式为灰色
chart.CategoryAxis.TickLabels.Font.Color = Color.Gray;
chart.CategoryAxis.TickLabelPosition = TickLabelPositionType.NextToAxis; //设置y轴的样式
chart.ValueAxis.TickLabelPosition = TickLabelPositionType.Low;
chart.ValueAxis.TickLabels.Font.Color = Color.Gray;
// chart.ValueAxis.TickLabels.TextDirection = TextDirectionType.LeftToRight;
//设置Legend位置以及样式
chart.Legend.Position = LegendPositionType.Bottom;
chart.Legend.TextFont.Color = Color.Gray;
chart.Legend.Border.Color = Color.Gray; }

 

使用Aspose.Cells 根据模板生成excel里面的 line chart的更多相关文章

  1. aspose.cells根据模板导出excel

    又隔十多天没写博客了,最近都在忙项目的事情,公司人事变动也比较大,手头上就又多了一个项目.最近做用aspose.cells根据模板导出excel报价单的功能,顺便把相关的核心记下来,先上模板和导出的效 ...

  2. 使用Aspose.Cells利用模板导出Excel(C#)

    前言 随着互联网的流行,web项目逐渐占据主流.我相信大部分人开发项目的过程中都写过上传以及导出Excel和Word的功能,本文仅讨论导出Excel.C#中有很多第三方组件支持导出Excel,比如:N ...

  3. C# -- 使用Aspose.Cells创建和读取Excel文件

    使用Aspose.Cells创建和读取Excel文件 1. 创建Excel Aspose.Cells.License li = new Aspose.Cells.License(); li.SetLi ...

  4. java通过FreeMarker模板生成Excel文件之.ftl模板制作

    关于怎么通过freemarker模板生成excel的文章很多,关键点在于怎么制作模板文件.ftl 网上的办法是: (1)把Excel模板的格式调好,另存为xml文件 (2)新建一个.ftl文件,把xm ...

  5. Aspose.Cell和NPOI生成Excel文件

    1.使用Aspose.Cell生成Excel文件,Aspose.Cell是.NET组件控件,不依赖COM组件 1首先一点需要使用新建好的空Excel文件做模板,否则容易产生一个多出的警告Sheet 1 ...

  6. Asp.Net中应用Aspose.Cells输出报表到Excel 及样式设置

    解决思路: 1.找个可用的Aspose.Cells(有钱还是买个正版吧,谁开发个东西也不容易): 2.在.Net方案中引用此Cells: 3.写个函数ToExcel(传递一个DataTable),可以 ...

  7. java利用Aspose.cells.jar将本地excel文档转化成pdf(完美破解版 无水印 无中文乱码)

    下载aspose-cells-8.5.2.jar包 http://pan.baidu.com/s/1kUBzsQ7 JAVA代码 package webViewer; import java.io.* ...

  8. C# WinForm使用Aspose.Cells.dll 导出导入Excel/Doc 完整实例教程

    1.添加引用: Aspose.Cells.dll(我们就叫工具包吧,可以从网上下载.关于它的操作我在“Aspose.Cells操作说明 中文版 下载 Aspose C# 导出Excel 实例”一文中的 ...

  9. 基于C#语言MVC框架Aspose.Cells控件导出Excel表数据

    控件bin文件下载地址:https://download.csdn.net/download/u012949335/10610726 @{ ViewBag.Title = "xx" ...

随机推荐

  1. 转:DataTable的Compute方法的应用

    转自:http://www.cnblogs.com/hfliyi/archive/2013/01/08/2851944.html 项目中遇到计算平均值.标准偏差.平均值+标准偏差.平均值+2倍标准偏差 ...

  2. python __setattr__, __getattr__, __delattr__, __call__

    python __setattr__, __getattr__, __delattr__, __call__ getattr `getattr`函数属于内建函数,可以通过函数名称获取 value = ...

  3. [JAVA] java仿windows 字体设置选项卡

    想用java做一个像windows里一样的txt编辑软件,涉及到字体设置选项卡,在网上找了很久都没找到,就生气啦自己写一个,现在贴这里分享一下,下次再遇到这样的问题就不用自己亲自打代码啦! packa ...

  4. Step by Step:Linux C多线程编程入门(基本API及多线程的同步与互斥)

    介绍:什么是线程,线程的优点是什么 线程在Unix系统下,通常被称为轻量级的进程,线程虽然不是进程,但却可以看作是Unix进程的表亲,同一进程中的多条线程将共享该进程中的全部系统资源,如虚拟地址空间, ...

  5. CI框架笔记

    @update 2016-4-2 13:45:35 一.目录结构 ci_demo ├─myapp 应用主目录 │ ├─autoload.php 自定义的自动加载文件(可选) │ ├─myapp.php ...

  6. celery与mangodb搭配应用

    写作背景介绍 在celery简单应用中已经介绍了如何去配置一个celery应用,也知道怎么分离任务逻辑代码与客户端代码了.我们现在的任务是怎么把计算结果保存到数据库中,这种数据持久化是非常重要的.你一 ...

  7. paip.截取字符串byLastDot方法总结uapi python java php c# 总结

    paip.截取字符串byLastDot方法总结uapi python java php c# 总结 ========uapi   left_byLastDot   right_byLastDot 目前 ...

  8. app开发之deviceone

    deviceone,跨平台.低成本.纯原生的app开发服务,具体介绍见:http://www.deviceone.net/ do不同于dcloud.rn等开发套件,do只是一座桥梁,可以选择使用jav ...

  9. nginx的反向代理和负载均衡的区别

    反向代理,是把一些静态资源存储在服务器上,当用户有请求的时候,就直接返回反向代理服务器上的资源给用户,而如果反向代理服务器上没有的资源,就转发给后面的负载均衡服务器,负载均衡服务器再将请求分发给后端的 ...

  10. Android中的内部类引起的内存泄露

    引子 什么是内部类?什么是内存泄露?为什么Android的内部类容易引起内存泄露?如何解决? 什么是内部类? 什么是内部类?什么又是外部类.匿名类.局部类.顶层类.嵌套类?大家可以参考我这篇文章 ,再 ...