3、汇总统计数据返回前台后,配置echarts需要的数据项
Model.prototype.button1Click = function(event) {
var optionData = this.comp("optionData");
var tempData = this.comp("tempData");// gridSelect1
var gridSelect1 = this.comp("gridSelect1");
this.flag = "1";
//按照用户的选择去加载echarts需要的结果数据集
optionData.refreshData();
//此时结果集已经加载的optionData中了,开始配置echart渲染的参数
//配置数据系列名称
var carNums = justep.Util.isString(tempData.val("carNums")) ? tempData.val("carNums").split(",") : "";
//配置X周的日期序列
var startDate = new Date(this.comp("input1").val());
var endDate = new Date(this.comp("input2").val());
// 计算两个日期的相关天数
var dayNum = justep.Date.diff(startDate, endDate, 'd');
var dateArr = new Array();
var colArr = new Array();
for (i = 0; i <= dayNum; i++) {
dateArr.push(justep.Date.toString(startDate, "yyyy-MM-dd"));
colArr.push("'" + justep.Date.toString(startDate, "yyyy-MM-dd") + "'");
startDate = justep.Date.decrease(startDate, -1, 'd');
}
//配置绘图区的数据
var arr = new Array();
optionData.eachByPeek(function(obj) {
var colName = "";
var data = new Array();
for (i in colArr) {
data[i] = parseInt(obj.row.val(colArr[i]));
}
arr.push({
name : obj.row.val("CAR_NUM"),
type : 'bar',
stack : '总量',
areaStyle : {
normal : {}
},
data : data
});
});
debugger;
option = {
title : {
text : '车辆入港次数堆积图'
},
tooltip : {
trigger : 'axis'
},
legend : {
data : carNums
},
toolbox : {
feature : {
saveAsImage : {}
}
},
grid : {
left : '3%',
right : '4%',
bottom : '3%',
containLabel : true
},
xAxis : [ {
type : 'category',
boundaryGap : false,
data : dateArr
} ],
yAxis : [ {
type : 'value'
} ],
series : arr
};
// 使用刚指定的配置项和数据在div元素上开始渲染图表
var myChart = echarts.init(this.getElementByXid("div1"));
myChart.setOption(option);
};