echarts的折线图点击后其他线置灰
时间: 2023-12-08 14:35:16 浏览: 271
Echarts实现的折线图
5星 · 资源好评率100%
在echarts的折线图中,如果想要实现点击某一条线时,其他线变为灰色的效果,可以通过以下步骤实现:
1. 在series中设置每条线的id,例如:id: 'line1'。
2. 在legend中设置每条线的点击事件,例如:selectedMode: 'single',selected: { 'line1': true }。
3. 在series中设置每条线的颜色,例如:color: '#ccc'。
4. 在legend的点击事件中,获取当前点击的线的id,然后遍历所有的线,将当前点击的线以外的其他线的颜色设置为灰色。
具体代码实现可以参考以下示例:
series: [{
id: 'line1',
name: '线1',
type: 'line',
data: [1, 2, 3, 4, 5],
color: '#61abf7'
}, {
id: 'line2',
name: '线2',
type: 'line',
data: [5, 4, 3, 2, 1],
color: '#f7a461'
}],
legend: {
data: ['线1', '线2'],
selectedMode: 'single',
selected: {
'line1': true
},
textStyle: {
color: '#333'
}
},
toolbox: {
feature: {
dataZoom: {
yAxisIndex: 'none'
},
restore: {},
saveAsImage: {}
}
},
grid: {
left: '3%',
right: '4%',
bottom: '3%',
containLabel: true
},
xAxis: {
type: 'category',
boundaryGap: false,
data: ['周一', '周二', '周三', '周四', '周五']
},
yAxis: {
type: 'value'
},
series: [{
id: 'line1',
name: '线1',
type: 'line',
data: [1, 2, 3, 4, 5],
color: '#61abf7'
}, {
id: 'line2',
name: '线2',
type: 'line',
data: [5, 4, 3, 2, 1],
color: '#f7a461'
}],
legend: {
data: ['线1', '线2'],
selectedMode: 'single',
selected: {
'line1': true
},
textStyle: {
color: '#333'
},
// 点击事件
selected: function(params) {
var selectedId = params.name;
var option = myChart.getOption();
var series = option.series;
for (var i = 0; i < series.length; i++) {
if (series[i].id != selectedId) {
series[i].itemStyle.normal.color = '#ccc';
} else {
series[i].itemStyle.normal.color = '#61abf7';
}
}
myChart.setOption(option);
}
},
tooltip: {
trigger: 'axis'
}
阅读全文