HighChat 动态绑定数据(二)
也是对最近几天的折线图搞得烦心,看了好多前辈的文章,也总结了一下。
1.先看后台程序,这是我模拟的一些参数 就是一个字符串。没啥好说的
public ActionResult Index2()
{
string[] key = { "2017-08-01", "2017-08-02", "2017-08-03", "2017-08-04", "2017-08-05", "2017-08-06", "2017-08-07", "2017-08-08", "2017-08-09", "2017-08-10" };
double[] V1 = { 4.3, 1.2, 1.3, 1.6, 7.6, 5.9, 9.0, , , };
double[] V2 = { 5.3, 1.9, 1.3, 1.4, 7.6, 0.4, 9.0, , , };
string json = "{\"rows\":[";
for (int i = ; i < key.Count(); i++)
{
json += "{\"atrname\":\"" + key[i] + "\",\"clickvalue\":\"" + V1[i] + "\",\"impvalue\":\"" + V2[i] + "\"},";
}
json = json.TrimEnd(',');
json += "]}";
return Content(json);
}
2.主要是前台的数据绑定
第一种方式:
1.其中头文件中加了 no-data-to-display.src.js 这个文件,表示如果在没有数据的时候会自动显示 暂无数据
lang: { noData: "暂无数据" },
legend: {
layout: 'vertical',
align: 'right',
verticalAlign: 'middle',
borderWidth: 0
}
2.请注意看现在的 series: [{}] 的值是这样的,因为如果是[],这样就不会有数据显示 用这种方式显示数据的时候
//这种方式必须默认有数据的时候才能显示
oOptions.series[0].name = "第三条";
oOptions.series[0].data = clickvalue;
3.var oSeries = {
// name: "第二条",
// data: clickvalue
//};
//oChart.addSeries(oSeries); 用这种方式 赋值的时候 series: [{}] 这样的时候,虽然显示一条折线图,但是右边会显示一个折线的表示。series:[] 这样就不会显示
用这种方式赋值的时候//oChart = new Highcharts.Chart(oOptions); 要去掉 或者 放到上面执行。
4.第三种方式 series:[] 或者series:[{}]都可以实现
@{
Layout = null;
}
<!DOCTYPE html>
<html>
<head>
<meta name="viewport" content="width=device-width" />
<title>Index</title>
<script src="~/charts/highcharts/exporting.js"></script>
<script src="~/charts/highcharts/highcharts.js"></script>
<script src="~/charts/highcharts/no-data-to-display.src.js"></script>
<script src="~/charts/highcharts/highcharts_jquery-1.8.3.min.js"></script>
</head>
<body>
<div id="container">
</div>
</body>
</html>
<script type="text/javascript">
var oChart = null;
var oOptions = {
chart: {
renderTo: 'container', //设置显示的页面块
type: 'line'
},
//图标标题
title: {},
credits: { enabled: false },
tooltip: { shared: true },
lang: { noData: "暂无数据" },
legend: {
layout: 'vertical',
align: 'right',
verticalAlign: 'middle',
borderWidth:
},
//x轴
xAxis: { title: {} },
//y轴
yAxis: { title: {} },
//数据列
series: []
};
$(document).ready(function () {
oChart = new Highcharts.Chart(oOptions);
requestData();
});
//新的折线图
function requestData() {
oChart.showLoading();
$.ajax({
url: '/Home/Index2',
type: 'POST',
dataType: 'json',
async: false, //同步处理后面才能处理新添加的series
data: null,
success: function (rntData) {
var xatrnames = [];
var clickvalue = [];
var impvalue = [];
for (var i = ; i < rntData.rows.length; i++) {
xatrnames.push([
rntData.rows[i].atrname
]);
clickvalue.push([
parseFloat(rntData.rows[i].clickvalue)
]);
impvalue.push([
parseFloat(rntData.rows[i].impvalue)
]);
}
alert(xatrnames + clickvalue);
oOptions.title.text = "标题";
oOptions.xAxis.title.text = "x轴标题";
oOptions.xAxis.categories = xatrnames;//x轴数据
//这种方式必须默认有数据的时候才能显示
oOptions.series[].name = "第三条";
oOptions.series[].data = clickvalue;
//必须有2条线的时候才会显示
oOptions.series[].name = "第三条";
oOptions.series[].data = clickvalue;
//这种方式为添加,每次只能添加一条
//var oSeries = {
// name: "第二条",
// data: clickvalue
//};
//oChart.addSeries(oSeries);
//此处可以用循环写入也可以的 循环赋值多个可以从0开始
//oOptions.series = new Array();
//oOptions.series[0] = new Object();
//oOptions.series[0].name = "点击";
//oOptions.series[0].data = clickvalue;
//oOptions.series[1] = new Object();
//oOptions.series[1].name = "展示";
//oOptions.series[1].data = impvalue;
//第二种方式的时候要去掉,或者放到上面先执行
//oChart = new Highcharts.Chart(oOptions);
}, error: function (jqXHR, textStatus, errorThrown) {
}
});
oChart.hideLoading();
}
</script>
后面我会把我的demo放上去 希望有错误的地方大家可以指正我,共同进步
下载链接:http://pan.baidu.com/s/1jHYFjE2
HighChat 动态绑定数据(二)的更多相关文章
- HighChat 动态绑定数据记录
最近刚开始做图形操作,纠结了一上午,highchat 动态绑定数据这块一直不知道怎么绑定,后来多次尝试,发现 1.x轴的数据是个数组格式,我从后台传到前台的时候,js中用数组进行处理数据,然后赋值到c ...
- HighChat动态绑定数据 数据后台绑定(四)
后台绑定数据,直接返回json数据 IList<SummaryHour> adHourData = summarybll.FindList(str); List<, , , , , ...
- HighChat动态绑定数据 数据后台绑定(三)
今天看了几位大佬的博客,学到了一些,现在分享一下,也作为以后的参考 不多说看代码 1.后台代码 public ActionResult Ajax2() { ReportData reportData ...
- dev checkedlistbox动态绑定数据
最近在做项目的时候遇到个问题.用checkedlistbox控件绑定数据.在这里稍微总结一下. 其实动态绑定数据有两种方法下面说一下 1.通过数据源 DataTable dt=new DataTabl ...
- eCharts 折线图,动态绑定数据不更新图表的问题,
官方文档 : http://echarts.baidu.com/tutorial.html npm install echarts --save let lineChart = echarts.ini ...
- bootstrap selectpicker 通过代码指定选中值 BootStrap selectpicker后台动态绑定数据 selectpicker 获取选中option的属性或者值
bootstrap-select使用 bootstrap selectpicker 通过代码指定选中值 $('#subjectno').selectpicker('val',(row.subjectn ...
- bootstrap select下拉框模糊搜索和动态绑定数据解决方法
此方法适合后台一次性返回所有数据好了废话不多说直接上代码: <!DOCTYPE html><html><head> <title>Bootstrap-s ...
- (转).net控件dropdownlist动态绑定数据
DropDownList控件的使用(数据绑定)(.net学习笔记二)(2006-10-12 07:28:49) 转载 分类:.net学习笔记 一.在页面初始化时候将集合绑定到DropDownLis ...
- .net控件dropdownlist动态绑定数据 ----转
DropDownList控件的使用(数据绑定)(.net学习笔记二) 一.在页面初始化时候将集合绑定到DropDownListpublic void Page_Load(Object src.Even ...
随机推荐
- AssetBundleMaster_ReadMe_CN
在开始使用之前, 建议先导入到一个空的工程里, 通过ReadMe的一步步引导使你对整个框架以及文件结构进行熟悉, 之后再考虑导入到现有工程中使用, 完整看完教程大概需要2个小时左右. 先看看文件夹结构 ...
- 网络编程socket模块subprocess模块 粘包的解决
什么是socket? tcp 可靠地面向连接协议 udp 不可靠的,无连接的服务,传送效率高
- JS三座大山再学习 ---- 作用域和闭包
本文已发布在西瓜君的个人博客,原文传送门 作用域 JS中有两种作用域:全局作用域|局部作用域 栗子1 console.log(name); //undefined var name = '波妞'; v ...
- 初始v4l2(六)-------根据虚拟驱动vivi的使用彻底分析摄像头驱动
前面的几篇文章已经分析了v4l2的框架,对框架的分析是比较粗浅的,能基本清楚函数之间的调用过程.但是很多内容并没有分析,比如说里面有很多ioctl,并没有分析哪些ioctl是必须的,也没有分析如何从应 ...
- CentOS最小化安装后找不到ifconfig命令
1.ifconfig命令是设置或显示网络接口的程序,可以显示出我们机器的网卡信息, 可是有些时候最小化安装CentOS等Linux发行版的时候会默认不安装ifconfig等命令, 这时候你进入终端,运 ...
- day5_configparser模块
第一种情况:# 配置文件baidu.ini和当前文件在同一级目录: import configparser conf_read = configparser.ConfigParser() conf_r ...
- LG2530 「SHOI2001」化工厂装箱员 高维DP+记忆化搜索
问题描述 LG2530 题解 设\(opt[i][a][b][c][d]\)代表装到第\(i\)个后,第\(1,2,3\)手上分别还剩\(a,b,c\)个的最小操作数. 记忆化搜索即可. 启示:如果状 ...
- [LeetCode] 252. Meeting Rooms 会议室
Given an array of meeting time intervals consisting of start and end times [[s1,e1],[s2,e2],...] (si ...
- oracle--ORA-27125
一,问题描述 ORA-27125 unable to create shared memory segment 二,问题解决 查看系统的oracleid号 [root@dgwxpdb ~]# id o ...
- SpringBoot集成Spring Security(7)——认证流程
文章目录 一.认证流程 二.多个请求共享认证信息 三.获取用户认证信息 在前面的六章中,介绍了 Spring Security 的基础使用,在继续深入向下的学习前,有必要理解清楚 Spring Sec ...