也是对最近几天的折线图搞得烦心,看了好多前辈的文章,也总结了一下。

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 动态绑定数据(二)的更多相关文章

  1. HighChat 动态绑定数据记录

    最近刚开始做图形操作,纠结了一上午,highchat 动态绑定数据这块一直不知道怎么绑定,后来多次尝试,发现 1.x轴的数据是个数组格式,我从后台传到前台的时候,js中用数组进行处理数据,然后赋值到c ...

  2. HighChat动态绑定数据 数据后台绑定(四)

    后台绑定数据,直接返回json数据 IList<SummaryHour> adHourData = summarybll.FindList(str); List<, , , , , ...

  3. HighChat动态绑定数据 数据后台绑定(三)

    今天看了几位大佬的博客,学到了一些,现在分享一下,也作为以后的参考 不多说看代码 1.后台代码 public ActionResult Ajax2() { ReportData reportData ...

  4. dev checkedlistbox动态绑定数据

    最近在做项目的时候遇到个问题.用checkedlistbox控件绑定数据.在这里稍微总结一下. 其实动态绑定数据有两种方法下面说一下 1.通过数据源 DataTable dt=new DataTabl ...

  5. eCharts 折线图,动态绑定数据不更新图表的问题,

    官方文档 : http://echarts.baidu.com/tutorial.html npm install echarts --save let lineChart = echarts.ini ...

  6. bootstrap selectpicker 通过代码指定选中值 BootStrap selectpicker后台动态绑定数据 selectpicker 获取选中option的属性或者值

    bootstrap-select使用 bootstrap selectpicker 通过代码指定选中值 $('#subjectno').selectpicker('val',(row.subjectn ...

  7. bootstrap select下拉框模糊搜索和动态绑定数据解决方法

    此方法适合后台一次性返回所有数据好了废话不多说直接上代码: <!DOCTYPE html><html><head> <title>Bootstrap-s ...

  8. (转).net控件dropdownlist动态绑定数据

    DropDownList控件的使用(数据绑定)(.net学习笔记二)(2006-10-12 07:28:49) 转载   分类:.net学习笔记 一.在页面初始化时候将集合绑定到DropDownLis ...

  9. .net控件dropdownlist动态绑定数据 ----转

    DropDownList控件的使用(数据绑定)(.net学习笔记二) 一.在页面初始化时候将集合绑定到DropDownListpublic void Page_Load(Object src.Even ...

随机推荐

  1. 笔记8:Linux知识

    linux学习笔记 1 Linux介绍 1.1 基本知识 应用领域:服务器使用 LAMP(Linux + Apache + MySQL + PHP)或 LNMP(Linux + Nginx+ MySQ ...

  2. c# 第四节 Net Framework编写应用程序的过程

    本节 1:创建.net应用程序所经历的步骤 2:cli是什么 3:程序集是什么 4:jit编辑器 5:托管代码 1:创建.net应用程序所经历的步骤 2:cli是什么 3:程序集是什么 4:jit编辑 ...

  3. oracle查看被锁的表及解除锁

    -- 查看被锁对象 select object_name,machine,s.sid,s.serial# from v$locked_object l,dba_objects o ,v$session ...

  4. LeetCode 113. Path Sum II路径总和 II (C++)

    题目: Given a binary tree and a sum, find all root-to-leaf paths where each path's sum equals the give ...

  5. cnpm包管理

    C:\Users\Administrator>npm config set registry http://registry.npm.taobao.org vue 安装 npm install ...

  6. [LeetCode] 312. Burst Balloons 打气球游戏

    Given n balloons, indexed from 0 to n-1. Each balloon is painted with a number on it represented by ...

  7. [勘误] Head First Java (2nd edition)中文版勘误

    附上英文原版高清pdf:链接: https://pan.baidu.com/s/1X5Aikj6krROnp3oXuTVl8Q 提取码: f6xd 标注本文: 上面的图是中文译本中的错误 下面的图是英 ...

  8. nginx 目录自动加斜线”/”

    默认配置当你访问http://abc.example.com/dir 时不会加”/” 常见做法 if (-d $request_filename){  rewrite ^/(.*)([^/])$ ht ...

  9. HTML连载27-层叠性&优先级&!important用法

    一.层叠性 1.定义:CSS处理冲突的一种能力 2.注意点:层叠性只有在多个选择器中“同一标签”,然后又设置了“相同的属性”,才会发生层叠性 3.CSS缩写:Cascading StyleSheet ...

  10. Github上传项目及更新自己的项目

    更新:请前往下载Github Deskdop,Git命令什么的再也不用啦! 一.首次上传项目 1.在GitHub上创建对应仓库 仓库建立如下: README文件不用勾选,否则初次上传文件就要合并. 2 ...