// 带有预计的折线图,要实现的效果,鼠标悬浮在线上时,
// 实际有值,只显示实际值,预计有值,只显示预计值,两者重合的点,显示实际值
// 没有数据的用空代替,必须设置在某一个点数值重合,才能形成完整的曲线
var actal = [1, 2, 3, 4, '', '', ''];
var predict = ['', '', '', 4, 4, 4, 5];
option = {
title: {
text: '折线图堆叠'
},
tooltip: {
trigger: 'axis',
formatter: function(params) { //提示信息,为空时,不显示
var temp = params[0].name + "<br/>";
var act = params[0].marker + params[0].seriesName + ":" + params[0].value + "元<br/>";
var pre = params[1].marker + params[1].seriesName + ":" + params[1].value + "元<br/>";
if (params[0].value === "") {//当实际值为空时,只显示预计值
return temp + pre;
}
if (params[1].value === "" || params[0].value === params[1].value) {
//当预计值为空或在某一点两者重合时,只显示实际值
return temp + act;
}
},
},
legend: {
data: ['实际', '预计', ]
},
grid: {
left: '20%',
right: '20%',
bottom: '40%',
containLabel: true
},
toolbox: {
feature: {
saveAsImage: {}
}
},
xAxis: {
type: 'category',
boundaryGap: false,
data: ['周一', '周二', '周三', '周四', '周五', '周六', '周日']
},
yAxis: {
type: 'value'
},
series: [{
name: '实际',
type: 'line',
data: actal
},
{
name: '预计',
type: 'line',
data: predict,
lineStyle: {
type: 'dashed',
}
},
]
};