-
var data = AjaxUtil.request({ -
url : "test.action" -
}); -
-
//为图表设置值 -
var myobj= data.rows; -
var deptname=''; -
var yf =[]; -
var nf =[]; -
var tqb =[]; -
for(var i=0;i<myobj.length;i++){ -
-
deptname += "'"+myobj.DEPT_NAME+"',"; -
yf.push(myobj.YF); -
nf.push(myobj.NF); -
tqb.push(myobj.TQB); -
} -
deptname = deptname.substring(0,deptname.length-1); -
deptname = eval('('+"["+deptname+"]"+')'); -
yf = eval('('+"["+yf+"]"+')'); -
nf = eval('('+"["+nf+"]"+')'); -

-
var chart = new Highcharts.Chart({ -
chart: { -
marginTop: 20, -
marginRight: 10, -
marginLeft: 25, -
renderTo: 'mapDiv' //图表显示的div 容器 -
}, -
title: { -
text: ' title ' -
}, -
xAxis: { -
categories: deptname //动态加载的X轴数据 -
}, -
yAxis: { -
min:0, -
minPadding: 0.2, -
maxPadding: 0.2, -
tickInterval:5, -
title: { -
ext: ' ' -
} -
}, -
tooltip: { -
formatter: function() { -
var s; -
if (this.point.name) { -
s = ''+ this.point.name +': '+ this.y +' fruits'; -
} else { -
s = ''+this.x +': '+ this.y+'条'; -
} -
return s; -
} -
}, -
legend: { -
layout: 'vertical', -
align: 'left', -
x: 60, -
verticalAlign: 'top', -
y: 50, -
floating: true -
}, -
series: [{ -
type: 'column', -
name: '当月累计', -
data: yf -
}, { -
type: 'column', -
name: '前年当月', -
data: tqb -
}, { -
type: 'spline', -
name: '当年累计', -
data: nf -
}] -
});
总结:
如实现坐标轴为时间的
xAxis: {
type: 'datetime' //类型
},
时间从后台传值以毫秒方式传出:Highcharts.dateFormat('%Y-%m-%d %H:%M:%S', this.x) 转化为页面展示的时间
需要在引用的js之前 加上:Highcharts.setOptions({global:{useUTC : false}});
由于时区问题 否则时间差事8小时
js 类库中
更改导出图片按钮中的英文字体和打印按钮都在exporting.js类库中
如何更改图表的高宽问题能更灵活?highcharts.src.js 中 更改getChartSize(); 重新赋值即可
本文详细介绍了使用Highcharts配置图表的过程,包括数据获取、图表设置等步骤,并分享了如何处理时间坐标轴及解决时区问题的经验。
8758

被折叠的 条评论
为什么被折叠?



