echarts 点击图表复制 x 轴值
echarts 中实现图表点击或双击复制 x 轴值的步骤如下:
mychart.getzr().on('click', e => {});
其中 mychart 为初始化的图表实例,getzr() 可获取图表绘图区域。
在事件处理函数中,需要将点击或双击的像素坐标转换为图表坐标,以便获取 x 轴值。
const [x, y] = mychart.convertfrompixel('grid', [e.offsetx, e.offsety]);
其中 e.offsetx 和 e.offsety 表示相对于图表绘图区域的点击或双击坐标,convertfrompixel() 方法用于转换像素坐标到图表坐标。
从图表坐标中可以获取到 x 轴的值,也就是想要复制的值。
console.log('x轴值:', mychart.getmodel().getcomponent('xaxis').getaxis('x').getcoord(x));
其中 getcoord() 方法用于根据 x 轴坐标获取对应的值。
获取到 x 轴值后,可以使用 navigator.clipboard.writetext() 方法复制到剪贴板。
navigator.clipboard.writeText(myChart.getModel().getComponent('xAxis').getAxis('x').getCoord(x));