echarts中柱状图中legend颜色更改,点击色块呈现灰色,在点击回复原色
时间: 2024-03-10 08:44:01 浏览: 77
要更改 ECharts 柱状图中图例的颜色,可以使用 series.itemStyle.normal.color 属性。例如,将第一项数据的颜色更改为红色,可以这样写:
```
series: [
{
name: '数据1',
type: 'bar',
data: [10, 20, 30, 40],
itemStyle: {
normal: {
color: 'red'
}
}
},
// 其他数据项省略
]
```
要实现点击图例时色块呈现灰色的效果,可以通过监听 legendselectchanged 事件来实现。例如,将点击的数据项的颜色更改为灰色,其他数据项的颜色不变,可以这样写:
```
myChart.on('legendselectchanged', function(params) {
var selected = params.selected;
var series = myChart.getOption().series;
for (var i = 0; i < series.length; i++) {
var name = series[i].name;
if (selected[name]) {
series[i].itemStyle.normal.color = 'gray';
} else {
series[i].itemStyle.normal.color = null;
}
}
myChart.setOption({ series: series });
});
```
这段代码监听了 legendselectchanged 事件,当用户点击图例时会触发该事件。事件处理函数中,首先获取点击后的选中状态和当前的数据系列。然后遍历所有数据系列,如果该数据系列被选中,则将其颜色更改为灰色;否则将其颜色恢复为原始颜色。最后调用 setOption 方法更新图表的配置项即可。
阅读全文