echarts地图,选中颜色设置;取消鼠标默认事件,点击选中地图实现颜色变化,选择高亮,选中高亮,取消选中(再次点击取消选中),下面以四川部分地图为例
在这里插入图片描述

series: [
          {
            // left: '0%',
            // top: '0%',
            zoom: 1.2,
            type: "map",
            map: name,
            roam: false, //鼠标平移或者缩放
            silent: silent,
            itemStyle: {
              normal: {//未对地图作任何操作时的样式,加载想默认展示的样式
                borderWidth: 2, //边框大小
                borderColor: "#ffffff",
                areaColor: "#2DD4D6", //背景颜色
                label: {
                  show: true,
                  formatter: function (params) {
                    return `{pic|${
                      params.value.toString() == "NaN" ? 0 : params.value
                    }}\n{fline|${params.name}}`;
                  },
                  position: "top",
                  rich: {
                    pic: {
                      backgroundColor: "rgba(25, 31, 37, 0.34)",
                      padding: [2, 5],
                      width: "auto",
                      height: 15,
                      align: "center",
                      color: "#FFFFFF",
                      fontSize: "10px",
                      borderRadius: 5,
                    },
                    fline: {
                      color: "#FFFFFF",
                      align: "center",
                      fontSize: "12px",
                    },
                  },
                },
              },
              emphasis: {// 这个是鼠标移上去就会选中的样式,鼠标mouseover
                  borderWidth:1,
                  borderColor:'yellow',
                  areaColor:"#77e8e4",
              }
            },
            //重点下面,与点击事件不同,虽然也是点击选中,但是事件不一样
            selectedMode:"single", //选择模式,单选,只能选中一个地市
            select:{//这个就是鼠标点击后,地图想要展示的配置
              disabled:false,//可以被选中
              itemStyle:{//相关配置项很多,可以参考echarts官网
                areaColor:"#77e8e4"//选中
              }
            },
            data: this.map.data,//你的地图数据
          },
        ],

针对选择模式,非点击(click),选择事件,可以获取相关地图数据,使用echarts地图的事件方法 mapselectchanged

var myChart = echarts.init(this.$refs.echart_map);
myChart.setOption(option, true);
myChart.on('mapselectchanged',(e)=>{
        console.log(e,111111111111);
}); 
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐