需求:折线图展示今年销售减去年销售的数据,鼠标显示今年销售业绩、去年销售业绩、对比销售业绩。
直接上代码:
option = {
title: {
text: '对数轴示例',
left: 'center'
},
tooltip: {
trigger: 'item',
formatter: function (params) {
return params.data.axisValue +'</br>'
+ '今年销售:'+ params.data.totalSales +'</br>'
+ '去年销售:'+ params.data.refunedSales +'</br>'
+ '对比销售:'+ params.data.value;
}
},
legend: {
left: 'left',
data: ['2的指数', '3的指数']
},
xAxis: {
type: 'category',
name: 'x',
splitLine: {show: false},
data: ['一', '二', '三', '四', '五', '六', '七', '八', '九']
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
yAxis: [{
type: 'log',
name: 'y',
minorTick: {
show: true
},
minorSplitLine: {
show: true
}},
{
name: 'total',
data: [{
value: 5,
textStyle: {
fontSize: 20,
color: 'red'
}},
{
value: 4,
textStyle: {
fontSize: 20,
color: '#666666'
}},
{
value: 8,
textStyle: {
fontSize: 20,
color: '#3594d8'
}}
]
}],
series: [
{
name: '3的指数',
type: 'line',
data: [{
axisValue: '12',
value: '1',
totalSales: '12',
refunedSales: '12'
}, {
axisValue: '32',
value: '3',
totalSales: '32',
refunedSales: '33'
},{
axisValue: '43',
value: '5',
totalSales: '44',
refunedSales: '45'
} , {
axisValue: '54',
value: '8',
totalSales: '55',
refunedSales: '56'
},{
axisValue: '67',
value: '34',
totalSales: '65',
refunedSales: '64'
}, {
axisValue: '76',
value: '654',
totalSales: '77',
refunedSales: '78'
}, {
axisValue: '87',
value: '456',
totalSales: '88',
refunedSales: '89'
}, {
axisValue: '99',
value: '4564',
totalSales: '98',
refunedSales: '90'
}, {
axisValue: '21',
value: '213',
totalSales: '23',
refunedSales: '25'
}]
},
{
name: '2的指数',
type: 'line',
data: [{
axisValue: '12',
value: '1',
totalSales: '12',
refunedSales: '12'
}, {
axisValue: '32',
value: '2',
totalSales: '32',
refunedSales: '33'
},{
axisValue: '43',
value: '4',
totalSales: '44',
refunedSales: '45'
} , {
axisValue: '54',
value: '8',
totalSales: '55',
refunedSales: '56'
},{
axisValue: '67',
value: '16',
totalSales: '65',
refunedSales: '64'
}, {
axisValue: '76',
value: '24',
totalSales: '77',
refunedSales: '78'
}, {
axisValue: '87',
value: '36',
totalSales: '88',
refunedSales: '89'
}, {
axisValue: '99',
value: '58',
totalSales: '98',
refunedSales: '90'
}, {
axisValue: '21',
value: '200',
totalSales: '23',
refunedSales: '25'
}]
}
]
};
最重要的两个地方:
1.鼠标显示
tooltip: {
trigger: 'item',
formatter: function (params) {
return params.data.axisValue +'</br>'
+ '今年销售:'+ params.data.totalSales +'</br>'
+ '去年销售:'+ params.data.refunedSales +'</br>'
+ '对比销售:'+ params.data.value;
}
},
2.数据封装
data 数组里面封装对象,value是展示的折线数据,其他自定义属性和数据
series: [
{
name: '3的指数',
type: 'line',
data: [{
axisValue: '12',
value: '1',
totalSales: '12',
refunedSales: '12'
}, {
axisValue: '32',
value: '3',
totalSales: '32',
refunedSales: '33'
},{
axisValue: '43',
value: '5',
totalSales: '44',
refunedSales: '45'
} , {
axisValue: '54',
value: '8',
totalSales: '55',
refunedSales: '56'
},{
axisValue: '67',
value: '34',
totalSales: '65',
refunedSales: '64'
}, {
axisValue: '76',
value: '654',
totalSales: '77',
refunedSales: '78'
}, {
axisValue: '87',
value: '456',
totalSales: '88',
refunedSales: '89'
}, {
axisValue: '99',
value: '4564',
totalSales: '98',
refunedSales: '90'
}, {
axisValue: '21',
value: '213',
totalSales: '23',
refunedSales: '25'
}]
},
{
name: '2的指数',
type: 'line',
data: [{
axisValue: '12',
value: '1',
totalSales: '12',
refunedSales: '12'
}, {
axisValue: '32',
value: '2',
totalSales: '32',
refunedSales: '33'
},{
axisValue: '43',
value: '4',
totalSales: '44',
refunedSales: '45'
} , {
axisValue: '54',
value: '8',
totalSales: '55',
refunedSales: '56'
},{
axisValue: '67',
value: '16',
totalSales: '65',
refunedSales: '64'
}, {
axisValue: '76',
value: '24',
totalSales: '77',
refunedSales: '78'
}, {
axisValue: '87',
value: '36',
totalSales: '88',
refunedSales: '89'
}, {
axisValue: '99',
value: '58',
totalSales: '98',
refunedSales: '90'
}, {
axisValue: '21',
value: '200',
totalSales: '23',
refunedSales: '25'
}]
}
]
效果: