vue echarts引入中国地图使用散点地图

2023-11-01 15:50

本文主要是介绍vue echarts引入中国地图使用散点地图,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

要使用4.1.0版本的echarts!!! 否则报Map china not exists. The GeoJSON of the map must be provided

安装:

npm install echarts@4.1.0 --save

引入:

import * as echarts from 'echarts'
import 'echarts/map/js/china'Vue.prototype.$echarts = echarts;

在这里插入图片描述

使用:

<template><div ref="chart" class="mapChart" style="width: 100%; height: 75vh"></div>
</template><script>
export default {name: "mapChina",data() {return {cityData: [],regions: [{name: "南海诸岛",itemStyle: {areaColor: "#6F798D",opacity: 0.65,},},{name: "北京",itemStyle: {areaColor: "#034DE4",opacity: 0.65,},},{name: "天津",itemStyle: {areaColor: "#034DE4",opacity: 0.65,},},{name: "上海",itemStyle: {areaColor: "#27E9FD",opacity: 0.65,},},{name: "重庆",itemStyle: {areaColor: "#0E7DEB",opacity: 0.65,},},{name: "河北",itemStyle: {areaColor: "#034DE4",opacity: 0.65,},},{name: "河南",itemStyle: {areaColor: "#034DE4",opacity: 0.65,},},{name: "云南",itemStyle: {areaColor: "#20CAF8",opacity: 0.65,},},{name: "辽宁",itemStyle: {areaColor: "#034DE4",opacity: 0.65,},},{name: "黑龙江",itemStyle: {areaColor: "#17A3F1",opacity: 0.65,},},{name: "湖南",itemStyle: {areaColor: "#0554E4",opacity: 0.65,},},{name: "安徽",itemStyle: {areaColor: "#27E8FD",opacity: 0.65,},},{name: "山东",itemStyle: {areaColor: "#4BFFFF",opacity: 0.65,},},{name: "新疆",itemStyle: {areaColor: "#17A3F1",opacity: 0.65,},},{name: "江苏",itemStyle: {areaColor: "#00b6f6",opacity: 0.65,},},{name: "浙江",itemStyle: {areaColor: "#00b6f6",opacity: 0.65,},},{name: "江西",itemStyle: {areaColor: "#01a4f1",opacity: 0.65,},},{name: "湖北",itemStyle: {areaColor: "#005ce5",opacity: 0.65,},},{name: "广西",itemStyle: {areaColor: "#0088ec",opacity: 0.65,},},{name: "甘肃",itemStyle: {areaColor: "#0042df",opacity: 0.65,},},{name: "山西",itemStyle: {areaColor: "#01d0fa",opacity: 0.65,},},{name: "内蒙古",itemStyle: {areaColor: "#00ccf7",opacity: 0.65,},},{name: "陕西",itemStyle: {areaColor: "#01b0f3",opacity: 0.65,},},{name: "吉林",itemStyle: {areaColor: "#0051e1",opacity: 0.65,},},{name: "福建",itemStyle: {areaColor: "#0158e3",opacity: 0.65,},},{name: "贵州",itemStyle: {areaColor: "#0199ef",opacity: 0.65,},},{name: "广东",itemStyle: {areaColor: "#00d9fc",opacity: 0.65,},},{name: "青海",itemStyle: {areaColor: "#005ae4",opacity: 0.65,},},{name: "西藏",itemStyle: {areaColor: "#01e9fd",opacity: 0.65,},},{name: "四川",itemStyle: {areaColor: "#0069e8",opacity: 0.65,},},{name: "宁夏",itemStyle: {areaColor: "#01b0f3",opacity: 0.65,},},{name: "海南",itemStyle: {areaColor: "#00f0ff",opacity: 0.65,},},{name: "台湾",itemStyle: {areaColor: "#0067e7",opacity: 0.65,},},{name: "香港",itemStyle: {areaColor: "#00dafa",opacity: 0.65,},},{name: "澳门",itemStyle: {areaColor: "#00dafa",opacity: 0.65,},},],};},created() {this.getData();},methods: {getData() {// api.stationCovers().then((res) => {//   console.log(res);// if (res === 0) {// 假设接口返回的散点的数据this.cityData = [{ name: "海门", value: 9, location: [121.15, 31.89] },{ name: "鄂尔多斯", value: 12, location: [109.781327, 39.608266] },{ name: "招远", value: 12, location: [120.38, 37.35] },{ name: "舟山", value: 12, location: [122.207216, 29.985295] },{ name: "齐齐哈尔", value: 14, location: [123.97, 47.33] },{ name: "盐城", value: 15, location: [120.13, 33.38] },{ name: "赤峰", value: 16, location: [118.87, 42.28] },{ name: "青岛", value: 18, location: [120.33, 36.07] },{ name: "乳山", value: 18, location: [121.52, 36.89] },{ name: "金昌", value: 19, location: [102.188043, 38.520089] },{ name: "泉州", value: 21, location: [118.58, 24.93] },{ name: "莱西", value: 21, location: [120.53, 36.86] },{ name: "日照", value: 21, location: [119.46, 35.42] },{ name: "胶南", value: 22, location: [119.97, 35.88] },{ name: "南通", value: 23, location: [121.05, 32.08] },{ name: "拉萨", value: 24, location: [91.11, 29.97] },{ name: "云浮", value: 24, location: [112.02, 22.93] },{ name: "梅州", value: 25, location: [116.1, 24.55] },{ name: "文登", value: 25, location: [122.05, 37.2] },{ name: "上海", value: 25, location: [121.48, 31.22] },];this.$nextTick(() => {this.$echarts.init(this.$refs.chart).setOption({tooltip: {trigger: "item",},geo: {map: "china",show: true,roam: true, //拖拽和伸缩label: {emphasis: {show: false,},},itemStyle: {/*  normal: {//地图背景色areaColor: "#034DE4",opacity: 0.65,}, */emphasis: {//鼠标放上去区域背景色areaColor: "#034DE4",opacity: 0.7,},},regions: this.regions, // 给每个省份的区域加上背景色},series: {// name: "电站投放地",type: "effectScatter",coordinateSystem: "geo",data: this.convertData(this.cityData),symbolSize: function (val) {//设置散点大小return val[2] / (val[2] / 10);},showEffectOn: "render", //配置何时显示特效。可选:'render' 绘制完成后显示特效rippleEffect: {//涟漪特效相关配置brushType: "stroke", //波纹的绘制方式,可选 'stroke' 和 'fill'},hoverAnimation: true, //是否开启鼠标 hover 的提示动画效果label: {//图形上的文本标签,可用于说明图形的一些数据信息,比如值,名称等,normal: {formatter: "{b}",position: "right",show: false,},},itemStyle: {//图形样式,normal 是图形在默认状态下的样式;emphasis 是图形在高亮状态下的样式,比如在鼠标悬浮或者图例联动高亮时normal: {color: "#0bfb50", //散点的颜色shadowBlur: 10,shadowColor: 20,fontSize: "12px",},},zlevel: 1,},});});// }// });},// 数据处理convertData(data) {var res = [];for (var i = 0; i < data.length; i++) {let geoCoord = data[i].location;if (geoCoord) {res.push({name: data[i].name,value: geoCoord.concat(data[i].value),});}}return res;},},
};
</script>
<style lang="less" scoped>
</style>

效果:
在这里插入图片描述
但是现在也有个遗留问题,缩放或拖动地图时,会报Unable to preventDefault inside passive event listener invocation. ,如您遇到解决办法,请指教

特别感谢:https://www.cnblogs.com/zzwlong/p/13597211.html

这篇关于vue echarts引入中国地图使用散点地图的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/324060

相关文章

Vue3 的 shallowRef 和 shallowReactive:优化性能

大家对 Vue3 的 ref 和 reactive 都很熟悉,那么对 shallowRef 和 shallowReactive 是否了解呢? 在编程和数据结构中,“shallow”(浅层)通常指对数据结构的最外层进行操作,而不递归地处理其内部或嵌套的数据。这种处理方式关注的是数据结构的第一层属性或元素,而忽略更深层次的嵌套内容。 1. 浅层与深层的对比 1.1 浅层(Shallow) 定义

这15个Vue指令,让你的项目开发爽到爆

1. V-Hotkey 仓库地址: github.com/Dafrok/v-ho… Demo: 戳这里 https://dafrok.github.io/v-hotkey 安装: npm install --save v-hotkey 这个指令可以给组件绑定一个或多个快捷键。你想要通过按下 Escape 键后隐藏某个组件,按住 Control 和回车键再显示它吗?小菜一碟: <template

中文分词jieba库的使用与实景应用(一)

知识星球:https://articles.zsxq.com/id_fxvgc803qmr2.html 目录 一.定义: 精确模式(默认模式): 全模式: 搜索引擎模式: paddle 模式(基于深度学习的分词模式): 二 自定义词典 三.文本解析   调整词出现的频率 四. 关键词提取 A. 基于TF-IDF算法的关键词提取 B. 基于TextRank算法的关键词提取

无人叉车3d激光slam多房间建图定位异常处理方案-墙体画线地图切分方案

墙体画线地图切分方案 针对问题:墙体两侧特征混淆误匹配,导致建图和定位偏差,表现为过门跳变、外月台走歪等 ·解决思路:预期的根治方案IGICP需要较长时间完成上线,先使用切分地图的工程化方案,即墙体两侧切分为不同地图,在某一侧只使用该侧地图进行定位 方案思路 切分原理:切分地图基于关键帧位置,而非点云。 理论基础:光照是直线的,一帧点云必定只能照射到墙的一侧,无法同时照到两侧实践考虑:关

【 html+css 绚丽Loading 】000046 三才归元阵

前言:哈喽,大家好,今天给大家分享html+css 绚丽Loading!并提供具体代码帮助大家深入理解,彻底掌握!创作不易,如果能帮助到大家或者给大家一些灵感和启发,欢迎收藏+关注哦 💕 目录 📚一、效果📚二、信息💡1.简介:💡2.外观描述:💡3.使用方式:💡4.战斗方式:💡5.提升:💡6.传说: 📚三、源代码,上代码,可以直接复制使用🎥效果🗂️目录✍️

使用SecondaryNameNode恢复NameNode的数据

1)需求: NameNode进程挂了并且存储的数据也丢失了,如何恢复NameNode 此种方式恢复的数据可能存在小部分数据的丢失。 2)故障模拟 (1)kill -9 NameNode进程 [lytfly@hadoop102 current]$ kill -9 19886 (2)删除NameNode存储的数据(/opt/module/hadoop-3.1.4/data/tmp/dfs/na

Hadoop数据压缩使用介绍

一、压缩原则 (1)运算密集型的Job,少用压缩 (2)IO密集型的Job,多用压缩 二、压缩算法比较 三、压缩位置选择 四、压缩参数配置 1)为了支持多种压缩/解压缩算法,Hadoop引入了编码/解码器 2)要在Hadoop中启用压缩,可以配置如下参数

【前端学习】AntV G6-08 深入图形与图形分组、自定义节点、节点动画(下)

【课程链接】 AntV G6:深入图形与图形分组、自定义节点、节点动画(下)_哔哩哔哩_bilibili 本章十吾老师讲解了一个复杂的自定义节点中,应该怎样去计算和绘制图形,如何给一个图形制作不间断的动画,以及在鼠标事件之后产生动画。(有点难,需要好好理解) <!DOCTYPE html><html><head><meta charset="UTF-8"><title>06

Makefile简明使用教程

文章目录 规则makefile文件的基本语法:加在命令前的特殊符号:.PHONY伪目标: Makefilev1 直观写法v2 加上中间过程v3 伪目标v4 变量 make 选项-f-n-C Make 是一种流行的构建工具,常用于将源代码转换成可执行文件或者其他形式的输出文件(如库文件、文档等)。Make 可以自动化地执行编译、链接等一系列操作。 规则 makefile文件

跨国公司撤出在华研发中心的启示:中国IT产业的挑战与机遇

近日,IBM中国宣布撤出在华的两大研发中心,这一决定在IT行业引发了广泛的讨论和关注。跨国公司在华研发中心的撤出,不仅对众多IT从业者的职业发展带来了直接的冲击,也引发了人们对全球化背景下中国IT产业竞争力和未来发展方向的深思。面对这一突如其来的变化,我们应如何看待跨国公司的决策?中国IT人才又该如何应对?中国IT产业将何去何从?本文将围绕这些问题展开探讨。 跨国公司撤出的背景与