echarts插件自定义问题

chart.on('legendselectchanged', function (params) {
var name = params.name;
var selected = params.selected;
selected[name] = true;
// 获取legend数据
var legend = chart.getOption().legend[0].data;
// 获取series数据
var series = chart.getOption().series;
for (var i = 0; i < legend.length; i++) {
if (name === legend[i]['name']) {
// 当前的legend高亮显示
legend[i]['textStyle']['fontWeight'] = 'bold';
legend[i]['textStyle']['color'] = '#000';
series[i]['lineStyle']['normal']['width'] = 4;
series[i]['lineStyle']['normal']['opacity'] = 1;
} else {
//其他legend恢复
legend[i]['textStyle']['fontWeight'] = 'normal';
legend[i]['textStyle']['color'] = '#343434';
series[i]['lineStyle']['normal']['width'] = 2;
series[i]['lineStyle']['normal']['opacity'] = 0.1;
}
}
// 改变数据
option.legend.selected = selected;
option.legend.data = legend;
option.series = series;
// 重新setOption
chart.setOption(option);
})

解释:
legend: {
        icon: 'none',
        data: [{
            name: '邮件营销',
            textStyle: {
                fontWeight: 'normal',
                color: '#fff'
            }
        },}
}

 series: [
        {
            name: '邮件营销',
            type: 'line',
            lineStyle: {
                color: 'red',
                width: 1
            },
            symbolSize: 0,
            data: [120, 132, 101, 134, 90, 230, 210],
        },]
添加上响应的属性就可以控制显示样式。
 
posted @ 2020-08-25 12:31  Mrs.Li&Zhang  阅读(155)  评论(0编辑  收藏  举报