问题

比如点击四川,进行下钻,需要获取点击区域的name属性,根据name进而异步获取四川的地图的json,如下图所示:
在这里插入图片描述

echart和gl版本

  • Loaded claygl, version 1.2.1
  • echarts-gl.min.js:1 Loaded echarts, version 4.6.0

事件绑定写法

myChart.on('click', function (clickparams) {
        console.log(clickparams);
        
    });

没法触发事件

网上找另外一个写法

myChart.getZr().on('click', function (clickparams) {
        console.log(clickparams);
        show(clickparams);
        
    });

只能获取到点击的x.y坐标,获取不到点击区域的名称,满足不了需求,崩溃,搞了好久, 后来去github issues上,果然很多人遇到这个问题,是个bug。

换个版本试试,

https://echarts.baidu.com/resource/echarts-gl-latest/dist/echarts-gl.min.js

用这个版本可,再配合

myChart.on('click', function (clickparams) {
        console.log(clickparams);
        
    });

可以实现触发,并获取点击区域的name,但是我之前调好的地图蓝色变白色了,好吧,总不能去研究源码吧?

变通解决办法

点击柱状图进行,可以触发click,就这样吧!!

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐