一、前台
1.创建echarts统计图相关
//基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('taskTotal'));//项目统计
//项目统计指定图表的配置项和数据
var initOption = {
title: {
text: '月度计划项目统计图',
x:'center',
y:'top',//标题位置
textAlign:'center'
},
tooltip: {
trigger: 'axis'//鼠标移上图标触发轴
},
legend: {//图例;
data:['计划完成值','实际完成值'],
x:'center',
y:'bottom'//图例位置
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true//坐标轴标签不会溢出容器
},
toolbox: {
feature: {
saveAsImage: {}
}
},
xAxis: {
type: 'category',
boundaryGap: false,//左右无留白;
name:'月份',//横轴名称
data: []
},
yAxis: {
type: 'value',
name:'数量'//纵轴名称
},
series: [
{
name:'计划完成值',
type:'line',
stack: '总量2',
symbol: 'circle', //设定为实心点
symbolSize: 10, //设定实心点的大小
itemStyle : {
normal : {
color:'#0099ff' ,//折线点颜色
lineStyle:{
color:'#0099ff' ,//折线条颜色
width:2,
type:'dashed' //'dotted'虚线 'solid'实线
}
}
},
data:[]
},
{
name:'实际完成值',
type:'line',
stack: '总量1',
symbol: 'circle', //设定为实心点
symbolSize: 10, //设定实心点的大小
itemStyle : {
normal : {
lineStyle:{
color:'red',
width:2
}
}
},
data:[]
}
]
};
以上的taskTotal是一个预先准备好id=“taskTotal”的dom,即一个有明确宽高的div区域。
2.给统计图赋值
//项目统计
function taskTotal(unitNames,startDate,endDate){
$.ajax({
url :webCfg.servePath +"/reportForm/showTotalForm",
type: "POST",
dataType : "JSON",
contentType: "application/x-www-form-urlencoded; charset=UTF-8",
data: {"unitNames":encodeURI(