直接上步骤:

 

生成一个options,选项包含了一些基本的配置,如标题,坐标刻度,serial等;

配置X轴显示的Category数据,为一个数组;

配置Y轴显示的数据,也为一个数据;

用生成option构建一个Hightcharts对象,即可以自动画出一个折线图了;

 

 

1.配置BundleConfig

 

  1. bundles.Add(new ScriptBundle("~/bundles/jquery").Include("~/Scripts/jquery-{version}.js", "~/Scripts/jquery.metadata.js"));
  2. bundles.Add(new ScriptBundle("~/bundles/highcharts").Include("~/Scripts/hightcharts/highcharts-custom.js"));

 

2.视图模板

 

  1. @Scripts.Render("~/bundles/highcharts")
  2.  
  3. <script type="text/javascript">
  4.     $(function () {
  5.         var option = option = getOption("container", '@ViewBag.titletext');
  6.         //生成两个serial
  7.         option.xAxis.categories = @Html.Raw(@ViewBag.categories)
  8.         option.series[0].data = @ViewBag.amount
  9.         option.series[1].data = @ViewBag.quantity
  10.         option.subtitle.text = '@ViewBag.subtitle'
  11.  
  12.         chart = new Highcharts.Chart(option);
  13.  
  14.         $("text:contains('销售数量')").trigger('click');
  15.     });
  16.  
  17.     function getOption(container, title) {
  18.         var options = {
  19.             chart: {
  20.                 renderTo: container,
  21.                 type: 'line'
  22.             },
  23.             title: {
  24.                 text: title
  25.             },
  26.             subtitle: {
  27.                 text: 'imc'
  28.             },
  29.             xAxis: {
  30.                 title: {
  31.                     text: '日期'
  32.                 }
  33.             },
  34.             yAxis: {
  35.                 title: {
  36.                     text: '数量或金额'
  37.                 },
  38.                 min: 0, // 定义最小值
  39.             },
  40.             plotOptions: {
  41.                 line: {
  42.                     dataLabels: {
  43.                         enabled: true
  44.                     }
  45.                 }
  46.             },
  47.             tooltip: {
  48.                 shared: true, //共享数据提示框
  49.             },
  50.             credits: {
  51.                 enabled: false
  52.             },
  53.             series: [{
  54.                 name: "销售金额"
  55.             }, {
  56.                 name: "销售数量"
  57.             }]
  58.         }
  59.  
  60.         return options;
  61.     }
  62.  
  63. </script>

 

3.后台代码

  1. categories = "['" + string.Join("','", list.Select(zw => zw.DTStr)) + "']";
  2. quantity = "[" + string.Join(",", list.Select(zw => zw.Quantity)) + "]";
  3. amount = "[" + string.Join(",", list.Select(zw => zw.Amount)) + "]";
  4.  
  5. ViewBag.titletext = title;
  6. ViewBag.categories = categories;
  7. ViewBag.quantity = quantity;
  8. ViewBag.amount = amount;
  9. ViewBag.subtitle = subtitle;

 

4.效果图

 

5.参考资料

 

中文教程与资料:http://www.hcharts.cn/docs/index.php?doc=basic-axis

示例:http://www.cnblogs.com/TivonStone/p/3539766.html

更多的charts插件:http://www.cnblogs.com/chu888chu888/archive/2012/12/22/2828962.html

ASP.NET MVC中使用highcharts 生成简单的折线图的更多相关文章

  1. ASP.NET MVC 中的视图生成

    关于 ASP.NET MVC 中的视图生成 在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Mode ...

  2. 关于 ASP.NET MVC 中的视图生成

    在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Model 用来表示处理的数据. 从控制器到视图 通 ...

  3. 关于ASP.NET MVC中的视图生成

    在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Model 用来表示处理的数据.   从控制器到视图 ...

  4. ASP.NET MVC中权限控制的简单实现

    1.重写AuthorizeAttribute类,用自己的权限控制逻辑重写AuthorizeCore方法 public class MyAuthorizeAttribute : AuthorizeAtt ...

  5. ASP.NET MVC中使用Ninject

    ASP.NET MVC中使用Ninject 在[ASP.NET MVC 小牛之路]系列上一篇文章(依赖注入(DI)和Ninject)的末尾提到了在ASP.NET MVC中使用Ninject要做的两件事 ...

  6. asp.net mvc 中 一种简单的 URL 重写

    asp.net mvc 中 一种简单的 URL 重写 Intro 在项目中想增加一个公告的功能,但是又不想直接用默认带的那种路由,感觉好low逼,想弄成那种伪静态化的路由 (别问我为什么不直接静态化, ...

  7. C# 动态生成word文档 [C#学习笔记3]关于Main(string[ ] args)中args命令行参数 实现DataTables搜索框查询结果高亮显示 二维码神器QRCoder Asp.net MVC 中 CodeFirst 开发模式实例

    C# 动态生成word文档 本文以一个简单的小例子,简述利用C#语言开发word表格相关的知识,仅供学习分享使用,如有不足之处,还请指正. 在工程中引用word的动态库 在项目中,点击项目名称右键-- ...

  8. ADO.NET .net core2.0添加json文件并转化成类注入控制器使用 简单了解 iTextSharp实现HTML to PDF ASP.NET MVC 中 Autofac依赖注入DI 控制反转IOC 了解一下 C# AutoMapper 了解一下

    ADO.NET   一.ADO.NET概要 ADO.NET是.NET框架中的重要组件,主要用于完成C#应用程序访问数据库 二.ADO.NET的组成 ①System.Data  → DataTable, ...

  9. 在Asp.Net MVC 中配置 Serilog

    Serilog 是一种非常简便记录log 的处理方式,使用Serilog可以生成本地的text文件, 也可以通过 Seq 来在Web界面中查看具体的log内容. 接下来就简单的介绍一下在Asp.Net ...

随机推荐

  1. microsofr visual studio编写c语言

    过程: 1.创建win32 控制台项目 文件->新建->项目->Visual C++ ->Win32   输入项目名称   选择项目保存位置 2.添加->新建如图

  2. iOS - 日期的时间差(某年某月某日的某一天。。。)

    //首先创建格式化对象 NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; [dateFormatter setDateF ...

  3. IT人学习方法论(三):高效学习

    一些有关“怎么学”的建议 首先需要明确方向,否则即使学习方法再高效,也不免南辕北辙,背离自己的目标.关于学习方向的讨论,请参见之前的一篇文章 .下面我来重点说一说有关“怎么学”的建议. IT技术,不是 ...

  4. Clr Via C#读书笔记---线程基础

    趣闻:我是一个线程:http://kb.cnblogs.com/page/542462/ 进程与线程 进程:应用程序的一个实例使用的资源的集合.每个进程都被赋予了一个虚拟地址空间. 线程:对CPU进行 ...

  5. SQL跨项目查询语法

    EXEC sp_addlinkedserver 'ITSV', '', 'SQLOLEDB', '192.168.1.248' EXEC sp_addlinkedsrvlogin 'ITSV', 'f ...

  6. ***PHP中error_reporting()用法详解(含codeigniter框架中屏蔽错误提示的解决方案)

    php中我们对错误的处理会常用到error_reporting函数了,大家可以看到最多的是error_reporting(E_ALL ^ E_NOTICE)了,这个到底什么意思呢,下面我来来看看. e ...

  7. 【javascript】 for循环小技巧

    最近在读[Jquery技术内幕],里面介绍了一种js for循环的实用写法. 一般写for循环是这么写的: var elemts = [1,2,3,4,5]; for(var i=0; i<el ...

  8. 动软MySQL存储过程模板

    <#@ template language="c#" HostSpecific="True" #><#@ output extension= ...

  9. 用康托展开实现全排列(STL、itertools)

    康拓展开: $X=a_n*(n-1)!+a_{n-1}*(n-2)!+\ldots +a_2*1!+a_1*0!$ X=an*(n-1)!+an-1*(n-2)!+...+ai*(i-1)!+...+ ...

  10. 25条提高Visual Studio编码和调试效率的技巧

    (此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:工欲善其事必先利其器.就算手中已经有了利器,如果能掌握一些使用工具的技巧,让利器更加顺 ...