ASP.NET MVC中使用highcharts 生成简单的折线图
直接上步骤:
生成一个options,选项包含了一些基本的配置,如标题,坐标刻度,serial等;
配置X轴显示的Category数据,为一个数组;
配置Y轴显示的数据,也为一个数据;
用生成option构建一个Hightcharts对象,即可以自动画出一个折线图了;
1.配置BundleConfig
- bundles.Add(new ScriptBundle("~/bundles/jquery").Include("~/Scripts/jquery-{version}.js", "~/Scripts/jquery.metadata.js"));
- bundles.Add(new ScriptBundle("~/bundles/highcharts").Include("~/Scripts/hightcharts/highcharts-custom.js"));
2.视图模板
- @Scripts.Render("~/bundles/highcharts")
- <script type="text/javascript">
- $(function () {
- var option = option = getOption("container", '@ViewBag.titletext');
- //生成两个serial
- option.xAxis.categories = @Html.Raw(@ViewBag.categories)
- option.series[0].data = @ViewBag.amount
- option.series[1].data = @ViewBag.quantity
- option.subtitle.text = '@ViewBag.subtitle'
- chart = new Highcharts.Chart(option);
- $("text:contains('销售数量')").trigger('click');
- });
- function getOption(container, title) {
- var options = {
- chart: {
- renderTo: container,
- type: 'line'
- },
- title: {
- text: title
- },
- subtitle: {
- text: 'imc'
- },
- xAxis: {
- title: {
- text: '日期'
- }
- },
- yAxis: {
- title: {
- text: '数量或金额'
- },
- min: 0, // 定义最小值
- },
- plotOptions: {
- line: {
- dataLabels: {
- enabled: true
- }
- }
- },
- tooltip: {
- shared: true, //共享数据提示框
- },
- credits: {
- enabled: false
- },
- series: [{
- name: "销售金额"
- }, {
- name: "销售数量"
- }]
- }
- return options;
- }
- </script>
3.后台代码
- categories = "['" + string.Join("','", list.Select(zw => zw.DTStr)) + "']";
- quantity = "[" + string.Join(",", list.Select(zw => zw.Quantity)) + "]";
- amount = "[" + string.Join(",", list.Select(zw => zw.Amount)) + "]";
- ViewBag.titletext = title;
- ViewBag.categories = categories;
- ViewBag.quantity = quantity;
- ViewBag.amount = amount;
- 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 生成简单的折线图的更多相关文章
- ASP.NET MVC 中的视图生成
关于 ASP.NET MVC 中的视图生成 在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Mode ...
- 关于 ASP.NET MVC 中的视图生成
在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Model 用来表示处理的数据. 从控制器到视图 通 ...
- 关于ASP.NET MVC中的视图生成
在 ASP.NET MVC 中,我们将前端的呈现划分为三个独立的部分来实现,Controller 用来控制用户的操作,View 用来控制呈现的内容,Model 用来表示处理的数据. 从控制器到视图 ...
- ASP.NET MVC中权限控制的简单实现
1.重写AuthorizeAttribute类,用自己的权限控制逻辑重写AuthorizeCore方法 public class MyAuthorizeAttribute : AuthorizeAtt ...
- ASP.NET MVC中使用Ninject
ASP.NET MVC中使用Ninject 在[ASP.NET MVC 小牛之路]系列上一篇文章(依赖注入(DI)和Ninject)的末尾提到了在ASP.NET MVC中使用Ninject要做的两件事 ...
- asp.net mvc 中 一种简单的 URL 重写
asp.net mvc 中 一种简单的 URL 重写 Intro 在项目中想增加一个公告的功能,但是又不想直接用默认带的那种路由,感觉好low逼,想弄成那种伪静态化的路由 (别问我为什么不直接静态化, ...
- C# 动态生成word文档 [C#学习笔记3]关于Main(string[ ] args)中args命令行参数 实现DataTables搜索框查询结果高亮显示 二维码神器QRCoder Asp.net MVC 中 CodeFirst 开发模式实例
C# 动态生成word文档 本文以一个简单的小例子,简述利用C#语言开发word表格相关的知识,仅供学习分享使用,如有不足之处,还请指正. 在工程中引用word的动态库 在项目中,点击项目名称右键-- ...
- 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, ...
- 在Asp.Net MVC 中配置 Serilog
Serilog 是一种非常简便记录log 的处理方式,使用Serilog可以生成本地的text文件, 也可以通过 Seq 来在Web界面中查看具体的log内容. 接下来就简单的介绍一下在Asp.Net ...
随机推荐
- Struts2拦截器之FileUploadInterceptor
一.它能做什么? 借助于这个拦截器我们可以实现文件的上传和下载功能. 理论部分: struts2的文件上传下载功能也要依赖于Apache commons-fileupload和Apache commo ...
- 20145206邹京儒《Java程序设计》实验报告一:Java开发环境的熟悉(Windows+IDEA)
20145206<Java程序设计>实验报告一:Java开发环境的熟悉(Windows+IDEA) 实验内容及步骤 1.使用JDK编译.运行简单的Java程序: 建立实验目录: 在IDEA ...
- 第二课 less的学习以及移动端需要注意的问题
一.LESS的学习笔记: 1.less介绍:一种动态样式语言.less将css赋予了动态语言的特性,如变量,继承,运算,函数,less既可以在客户端上运行(支持IE6+,webkit,firefox) ...
- linux 普通用户切换成root免密码
[root@ok ~]# vim /etc/pam.d/su 下面是/etc/pam.d/su文件的内容 #%PAM-1.0 auth sufficient pam_rootok.so # Uncom ...
- C#值类型与引用类型
值类型(Value Type),值类型实例通常分配在线程的堆栈(stack)上,并且不包含任何指向实例数据的指针,因为变量本身就包含了其实例数据.其在MSDN的定义为值类型直接包含它们的数据,值类型的 ...
- wifi基础知识整理
转自 :http://blog.chinaunix.net/uid-9525959-id-3326047.html WIFI基本知识整理 这里对wifi的802.11协议中比较常见的知识做一个基本的总 ...
- ***CI的CLI运行方式
linux下的执行命令: 1.PHP解释器 2.CI根目录的index.php 3.控制器所在的文件夹 4. 控制器名称 5. 方法名称 (参数) 参考文献: http://codeigni ...
- 在PYTHON3中,使用Asyncio来管理Event loop
#!/usr/bin/env python # -*- coding: utf-8 -*- import asyncio import datetime import time def functio ...
- 查看MYSQL中数据表占用的空间
由于数据太大了.所以MYSQL需要瘦身,那前提就是需要知道每个表占用的空间大小. 首先打开指定的数据库: use information_schema; 如果想看指定数据库中的数据表,可以用如下语句: ...
- Linq To Sql中实现Left Join与Inner Join使用Linq语法与lambda表达式
当前有两个表,sgroup与sgroupuser,两者通过gKey关联,而sgroup表记录的是组,而sgroupuser记录是组中的用户,因此在sgroupuser中不一定有数据.需要使用Left ...