关于使用Echarts来设置地图并触发点击事件

这篇具有很好参考价值的文章主要介绍了关于使用Echarts来设置地图并触发点击事件。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

先上效果图

echarts地图点击事件,echarts,地图,点击事件,javascript,前端,开发语言,Powered by 金山文档
<template>
  <div :style="{height: scrollerHeight,width: scrollerWeight}" ref="charts"></div>
</template>

<script>
import * as echarts from "echarts";
import shengfen from "echarts/map/json/china.json"; 

export default {
  data() {
    return {
      airData : [
                    { name: '北京', value: 1},
                    { name: '天津', value: 2 },
                    { name: '河北', value: 5 },
                    { name: '山西', value: 7 },
                    { name: '内蒙古', value: 10 },
                    { name: '辽宁', value: 12 },
                    { name: '吉林', value: 15 },
                    { name: '黑龙江', value: 18 },
                    { name: '上海', value: 20 },
                    { name: '江苏', value: 22 },
                    { name: '浙江', value: 25 },
                    { name: '安徽', value: 30 },
                    { name: '福建', value: 34 },
                    { name: '江西', value: 96 },
                    { name: '山东', value: 92 },
                    { name: '河南', value: 13 },
                    { name: '湖北', value: 27 },
                    { name: '湖南', value: 17 },
                    { name: '广东', value: 38 },
                    { name: '广西', value: 59 },
                    { name: '海南', value: 54 },
                    { name: '重庆', value: 66 },
                    { name: '四川', value: 8 },
                    { name: '贵州', value: 1 },
                    { name: '云南', value: 25 },
                    { name: '西藏', value: 24 },
                    { name: '陕西', value: 25 },
                    { name: '甘肃', value: 19 },
                    { name: '青海', value: 17 },
                    { name: '宁夏', value: 52 },
                    { name: '新疆', value: 10 },
                    { name: '台湾', value: 8 },
                ]
    }
  },
 
computed: {
            scrollerHeight: function () {
                return (document.documentElement.clientHeight - 250) + 'px'; //自定义高度
            },
            scrollerWeight: function () {
                return (document.documentElement.clientWeight - 550) + 'px'; //自定义宽度
            }
        },
created() {
            this.$nextTick(() => {
                this.initCharts();
            })
          },

methods: {
            initCharts() {
                const charts = echarts.init(this.$refs["charts"]);
                const option = {
                    backgroundColor: "rgba(0, 0, 0, 0)",//地图组件的背景色
                    // 提示浮窗样式
                    tooltip: {
                        show: true,
                        trigger: 'item', //坐标轴触发,主要在柱状图,折线图等会使用类目轴的图表中使用
                        axisPointer: {// 坐标轴指示器,坐标轴触发有效
                            type: 'shadow' // 默认为直线,可选为:'line' | 'shadow'
                        },
                        alwaysShowContent: false,
                        backgroundColor: "rgba(36, 215, 209, 1)",//提示框背景色
                        borderColor: "rgba(255, 255, 0, 1)",
                        triggerOn: "mousemove",
                        enterable: true, //鼠标是否可进入提示框浮层中
                        textStyle: {
                            fontSize: "12",
                            overflow: "break",
                        },
                        formatter: function (params) {//提示框显示的内容
                          // console.log('params',params)
                            let str = '';
                            str = `<div> ` + params.name + `:` + params.value + `</div>`                   
                            return str
                        },
                    },
                    // visualMap: { //分段型视觉映射组件
                    //     show: true,
                    //     type: 'piecewise',
                    //     left: 50,
                    //     bottom: 50,
                    //     showLabel: true,
                    //     itemWidth: 10,
                    //     itemHeight: 10,
                    //     inverse: true,
                    //     // lt:小于; lte:小于等于; gt:大于; gte:大于等于;
                    //     pieces: [  
                    //         {
                    //             lt: 5,
                    //             label: "<5ms",
                    //             color: "#83CBAC"
                    //         },
                    //         {
                    //             gte: 5,
                    //             lte: 10,
                    //             label: "5-10ms",
                    //             color: "#55BB8A"
                    //         },
                    //         {
                    //             gt: 10,
                    //             lte: 15,
                    //             label: "10-15ms",
                    //             color: "#20A162"
                    //         },
                    //         {
                    //             gt: 15,
                    //             lte: 20,
                    //             label: "15-20ms",
                    //             color: "#9ABEFA"
                    //         },
                    //         {
                    //             gt: 20,
                    //             lte: 30,
                    //             label: '20-30ms',
                    //             color: "#78A9F9"
                    //         },
                    //         {
                    //             gt: 30,
                    //             label: '>30ms',
                    //             color: "#5693F7"
                    //         }
                    //     ]
                    // },
                    // 地图配置
                    geo: {
                        map: "china",
                        aspectScale: 0.8, //长宽比,0.75的含义为宽是高的0.75,假如高为100,宽就只有75;0.5的含义就是宽只有高的一半,假如高为100,宽就只有50
                        zoom: 0.5, //视觉比例大小,1.2即为原有大小的1.2倍
                        roam: false, //是否开启鼠标缩放和平移漫游。默认不开启。可以不用设置,如果只想要开启缩放或者平移,可以设置成 'scale' 或者 'move'。
                        top: '0',//地图距离顶部的距离
                        label: {
                            // 通常状态下的样式
                            normal: {
                                show: true,
                                textStyle: {
                                    color: "#fff",//地图上文字的颜色
                                },
                            },
                            // 鼠标放上去的样式
                            emphasis: {
                                textStyle: {
                                    color: "rgba(242, 153, 74, 1)",
                                },
                            },
                        },
                        // 地图区域的样式设置
                        itemStyle: {
                            normal: {
                                areaColor: "#457AAC",//地图填充色
                                borderColor: "rgba(36, 215, 209, 1)",//地图分割线颜色
                                borderWidth: 1,
                            },
                            // 鼠标放上去高亮的样式
                            emphasis: {
                                areaColor: "#37AAE8",//地图填充色
                                borderColor: "#08EFEF",//地图分割线颜色
                                borderWidth: 1,
                            },
                        },
                    },
                    series: [
                        {
                            selectedMode: false, //取消地图区域点击事件
                            geoIndex: 0,  //将数据和第0个geo配置关联在一起
                            type: 'map',
                            data: this.airData,
                        },
                    ],
                };
                // 地图注册,第一个参数的名字必须和option.geo.map一致
                echarts.registerMap("china", shengfen )//第一个参数为配置设置的名称,第二个参数为引入的地图名称
                charts.setOption(option);
                charts.on("click", function (params) { //点击事件
                    console.log('我被点击了',params)
                    
                });
                // charts.on("mouseover", function () { //取消鼠标移入地图区域高亮
                //     charts.dispatchAction({
                //         type: 'legendUnSelect'
                //     });
                // });
            },
        }
}
</script>

<style>

</style>

有坑需要小伙伴们避开,Echarts版本号超过4.9就不能使用地图软件了,所以需要先卸载高版本再安装

// 卸载echarts运行:
npm uninstall echarts
// 安装4.9版本的echarts
npm install echarts@4.9.0 --save

配置好后复制就可以看到效果。文章来源地址https://www.toymoban.com/news/detail-515819.html

到了这里,关于关于使用Echarts来设置地图并触发点击事件的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【Echarts图例点击事件】自定义Echarts图例legend点击事件(已解决)

    **【写在前面】**这下我又不得不说了,还是客户现场使用时想查询一周的数据,查询时候发现页面居然要等20多秒,这是个人都得崩溃吧,然后就开始排查这块业务代码模块,主要体现在两个方面: A.接口请求时间过长(约8秒),有优化的空间 B.前端一次性调用了四次接口,分

    2023年04月08日
    浏览(83)
  • echarts 地图点击常见问题

    echats 散点图不支持缩放 echarts 地图点击激活label如何去除 高德loca 1.4版本热力图报错 绘制的颜色区间是 0 --1 高德地图销毁不生效 自己傻逼,每次没有清空数组导致叠加数据,约点数据越多。 为何用高德地图district.search查询不到别的省数据,注意切换center坐标

    2024年02月16日
    浏览(58)
  • echarts用法之点击事件

    echarts用法之点击事件 - 知乎 echarts可以通过点击事件获取每项的值:myChart.on(\\\'click\\\', function (param) { } // myChart为自定义变量:var myChart = echarts.init(document.getElementById(\\\'echartBox\\\')); 可以通过param… https://zhuanlan.zhihu.com/p/588249196

    2024年02月08日
    浏览(62)
  • echarts 点击事件

    饼图点击事件会触发两次 可以通过点击事件 查询当前饼图是裂开还是合上的状态 a.event.target.parent._children是饼图的对象数组 数组中selected为true代表当前为选中状态,反之未选中 echarts的legend事件禁用以及legend显示百分比 自定义fomatter图标消失解决

    2024年02月11日
    浏览(37)
  • echarts的tooltip添加点击事件

    效果如下  代码如下  代码如下

    2024年02月16日
    浏览(35)
  • [echarts]柱状图的点击事件

    先来一段简洁的写echarts图表的代码: 如图所示,如果柱状图需要有点击事件: 但这只是点击蓝色柱条部分才会触发点击事件的写法 如果柱条没有数据,用上述方法点击时将不会触发,如果无数据点击背景也依旧想触发点击事件,就用下面方法: 另外,再补充一下划过和划出事

    2024年02月13日
    浏览(45)
  • echarts实现渐变折线图并添加点击事件

         折线图点击事件代码:  完整代码如下:

    2024年02月16日
    浏览(54)
  • uniapp 微信小程序 echarts地图 点击显示类目

    效果如图: 在tooltip内axisPointer内添加 label:{show:true} 即可显示“请求离婚”的标题

    2024年02月13日
    浏览(56)
  • vue-echarts饼图/柱状图点击事件

    在实际的项目开发中,我们通常会用到Echarts来对数据进行展示,有时候需要用到Echarts的点击事件,增加系统的交互性,一般是点击Echarts图像的具体项来跳转路由并携带参数,当然也可以根据具体需求来做其他的业务逻辑。下面就Echarts图表的点击事件进行实现,文章省略了

    2024年02月06日
    浏览(49)
  • 前端echarts地图3D效果+点击地域出现弹出框可以有确定取消操作

    效果图如下:    代码如下: 运行3D项目要安装一下echarts-gl依赖: 引入的jiangsu文件要单独下载json文件,附上两个网址: DataV.GeoAtlas地理小工具系列 POI数据|高德POI|高德兴趣点|高德POI数据|高德POI下载|高德POI数据库|高德POI分类|高德北京市POI|高德上海市POI|高德广州市POI|高德

    2024年02月11日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包