echarts图表存入mysql_使用echarts报表转换显示数据库中已有数据

该博客讲述了如何将从MySQL数据库获取的统计数据转化为ECharts所需的格式,并展示为堆叠柱状图。通过用户选择的日期范围,计算日期序列,配置ECharts的系列数据和图表参数,最后在前端页面上渲染图表。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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);

};

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值