eCharts图表点击事件(柱形、label),获取选择项的下标及值

获取选则项的值的话,打印params就能找到了,故主要说明找到对应下标的情况。

柱形点击事件

简单代码

this.myChart = echarts.init(this.$refs.chartbox1);
this.myChart.off("click");
this.myChart.on("click", (params) => {
	console.log("params", params);
});

打印的结果:
在这里插入图片描述
dataIndex为选择性的下标

存在问题

在某一柱形数据为0时,则无法点击当前项
在这里插入图片描述

label点击事件

网上很多用convertFromPixel获取坐标,但是实际使用却经常计算不准确,现采取label计数的方式获取

this.myChart = echarts.init(this.$refs.chartbox1);
this.myChart.off("click");
this.myChart.on("click", (params) => {
	console.log("params", params);
    let dataIndex = params.dataIndex; // 直接点击柱形
    if (!dataIndex && dataIndex !== 0 && params.targetType === "axisLabel" && params.event.target.anid.includes("label_")) {
    	// 点击x轴label
        dataIndex = Number(params.event.target.anid.split("_")[1]);
    }
    if (parseInt(dataIndex) === dataIndex) {
        // dataIndex 为选择项的下标
    }
});

开启label选择

xAxis: {
	triggerEvent: true,
	...
}

打印的结果:
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值