antvis/G2

【v4】怎么获取坐标点对应的数据? #5321

stillsilly posted onGitHub

image 想在点击红框区域时拿到数据, element:click 事件只有在点击蓝色矩形时才触发, 浅色背景点了没用。 如果把点击事件绑在整个图表上,怎么通过坐标拿对应的数据?

https://github.com/antvis/G2/issues/1598 https://github.com/antvis/G2/issues/614 这 2 个 issue 提到的 api getSnapRecords v4 版本已经没了


/**
 * 获取逼近的点的数据集合
 * @param  {Object} point 画布上的像素点
 * @return {Array} 数据
 */
getSnapRecords(point) {
  const self = this;
  const geoms = self.get('geoms');
  const rst = [];
  Util.each(geoms, geom => {
    const dataArray = geom.get('dataArray');
    let record;
    Util.each(dataArray, data => {
      record = geom.findPoint(point, data);
      record && rst.push(record);
    });
  });
  return rst;
}

上述是 3.x 中的这个方法,我们评估一下在 v5 中是否容易加上这个方法。

posted by hustcc over 1 year ago

image 想在点击红框区域时拿到数据, element:click 事件只有在点击蓝色矩形时才触发, 浅色背景点了没用。 如果把点击事件绑在整个图表上,怎么通过坐标拿对应的数据?

#1598 #614 这 2 个 issue 提到的 api getSnapRecords v4 版本已经没了

解决你这个问题,只需要把 tooltip.shared 设置为 true 就可以了。

posted by hustcc over 1 year ago

Fund this Issue

$0.00
Funded

Pull requests