vue使用echarts实现地图的方法详解

 更新时间:2022年03月24日 15:11:20   作者:HerayChen  
这篇文章主要为大家详细介绍了vue使用echarts实现地图的方法,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助

ASGVyYXlDaGVu,size_20,color_FFFFFF,t_70,g_se,x_16)

全局安装echarts

npm i echarts --save

将echarts绑定在原型上(main.js文件中)

import * as echarts from 'echarts';
Vue.prototype.$echarts = echarts;

准备画布

<template>
  <div ref="openingChart" style="height: 600px;"></div>
</template>
<script>
import china from "../store/china.json";
export default {
	methods: {
		initCharts() {
			   // 初始化中国地图
		      this.$echarts.registerMap("china", china);
		      // 获取dom节点
		      let openingChart= this.$echarts.init(this.$refs.openingChart);
		      // option配置写在最下面的
		      openingChart.setOption(option);
		      window.addEventListener("resize", () => {
		        openingBankChart.resize();
		      });
		}
	},
	mounted() {
		this.initCharts();
	}
}
</script>

地图配置option

option = {
    // 地图背景色
    backgroundColor: "#ccd3e4",
    geo: {
        map: 'china',
    },
    tooltip: {
        trigger: 'item',
        // 自定义提示框的内容
        /** 这里自定义显示的值是data中value数组的第二个值
         * formatter(params) {
                return (
                "<div>" +
                params.data.name +
                " <br> " +
                "省份总额度:" +
                params.data.value[2] +
                "(万元)</div>"
                );
            }
         */
    },
    series: [
        {
            type: 'map',
            map: 'china',
            geoIndex: 1,
            showLegendSymbol: false, // 存在legend时显示
            tooltip: {
                show: false
            },
            label: {
                normal: {
                    show: false
                },
                emphasis: {
                    show: false
                }
            },
            roam: false,

            itemStyle: {
                normal: {
                    areaColor: "#aaa",
                    borderColor: "#ccd3e4",
                    borderWidth: 1,
                },
                emphasis: {
                    areaColor: "#aaa",
                },
            },
        }, {
            name: '省份总额度',
            type: 'effectScatter',
            coordinateSystem: 'geo',
            data: [{
                name: "深圳",
                value: [121.15, 31.89, 12],
            },
            {
                name: "武汉",
                value: [109.781327, 39.608266, 29]
            }],
            symbolSize: 20,
            symbol: 'circle',
            label: {
                normal: {
                    show: false,
                },
                emphasis: {
                    show: false,
                },
            },
            showEffectOn: "render",
            itemStyle: {
                normal: {
                    color: {
                        type: "radial",
                        colorStops: [
                            {
                                offset: 0,
                                color: "#e5c68b",
                            },
                            {
                                offset: 0.8,
                                color: "#6e96d4",
                            },
                            {
                                offset: 1,
                                color: "#6e96d4",
                            },
                        ],
                        global: false, // 缺省为 false
                    },
                },
            },

        },
    ]
}

中国地图包(china.json)

去除了海南多余的地方的中国地图

总结

本篇文章就到这里了,希望能够给你带来帮助,也希望您能够多多关注脚本之家的更多内容! 

相关文章

  • vue中provide和inject的用法及说明(vue组件爷孙传值)

    vue中provide和inject的用法及说明(vue组件爷孙传值)

    这篇文章主要介绍了vue中provide和inject的用法及说明(vue组件爷孙传值),具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-05-05
  • vite+vue3项目解决低版本兼容性问题解决方案(Safari白屏)

    vite+vue3项目解决低版本兼容性问题解决方案(Safari白屏)

    这篇文章主要介绍了vite+vue3项目解决低版本兼容性问题(Safari白屏),使用官方插件 @vitejs/plugin-legacy 为打包后的文件提供传统浏览器兼容性支持,本文给大家介绍的非常详细,需要的朋友可以参考下
    2024-03-03
  • Vue中动态Class实战示例

    Vue中动态Class实战示例

    这篇文章主要为大家介绍了Vue中动态Class的实战示例,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-11-11
  • 详解Vuex的属性和作用

    详解Vuex的属性和作用

    这篇文章主要为大家介绍了Vuex的属性和作用,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2021-12-12
  • vue实现会议室拖拽布局排座功能

    vue实现会议室拖拽布局排座功能

    vue-draggable-resizable-gorkys是一更强大的拖拽组件,可以随意拖拽,有点坐标,会议室拖拽布局排座是vue-draggable结合vue-draggable-resizable-gorkys进行开发的,本文重点给大家介绍vue实现会议室拖拽布局排座,感兴趣的朋友一起看看吧
    2023-11-11
  • 使用axios请求时,发送formData请求的示例

    使用axios请求时,发送formData请求的示例

    今天小编就为大家分享一篇使用axios请求时,发送formData请求的示例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-10-10
  • vue/cli3版本打包如何去掉soucemap文件

    vue/cli3版本打包如何去掉soucemap文件

    这篇文章主要介绍了vue/cli3版本打包如何去掉soucemap文件问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • Vue+axios 实现http拦截及路由拦截实例

    Vue+axios 实现http拦截及路由拦截实例

    这篇文章主要介绍了Vue+axios 实现http拦截及路由拦截 ,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-04-04
  • vue项目纯前端实现的模板打印功能示例代码

    vue项目纯前端实现的模板打印功能示例代码

    在Vue项目中,通过使用vue-print-nb插件,可以实现页面的打印功能,这篇文章主要介绍了vue项目纯前端实现的模板打印功能的相关资料,需要的朋友可以参考下
    2024-10-10
  • Vue实现左右菜单联动实现代码

    Vue实现左右菜单联动实现代码

    这篇文章主要介绍了Vue实现左右菜单联动实现代码,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-08-08

最新评论