DataV.GeoAtlas地理小工具实现地图:DataV.GeoAtlas地理小工具系列

实现效果:

惠州地图获取,从地理小工具官网中下载

其他地图如大亚湾则需自行找资源。

下面为实现代码:

<template><div class="echartsMapAllDemo"><div id="myEcharts" ref="myEcharts"></div></div>
</template>
<script>
import chinaJson from "@/static/dyw.json";
export default {data() {return {mapData:[]};},mounted() {},methods: {initMapData(year){this.request("/index/getAreaQuantityYear", { year: year}, "get").then((res) => { res.forEach(item => {var num={ name:"", value:"",}num.name=item.NAME;num.value=item.QUANTITY;this.mapData.push(num);});this.chinaEcharts(this.mapData);// 准备数据之前清空地图数据this.mapData=[]});},chinaEcharts(data) {//1.注册一个地图this.$echarts.registerMap("大亚湾", chinaJson);//2.初始化echartslet myChart = this.$echarts.init(this.$refs.myEcharts);//5.echarts配置let option = {backgroundColor: "transparent",// layoutCenter: ['1350%', '500%'],// layoutSize: '5500%',title: {text: "",subtext: "",sublink: "",left: "center",textStyle: {color: "#fff",},},tooltip: {trigger: "item",// formatter: "{b}<br/>{c} ",formatter: function (params) {let name = params.name;let value = "";//判断字符类型是否是NANif(params.value !== params.value){value=0}else{value=params.value;}return name+"<br/>"+value;}},visualMap: {min: 1,max: 100,text: ["High", "Low"],calculable: true,seriesIndex: [0], //这个对应的是series的数组下标inRange: {color: ["#00467F", "#A5CC82"],},},geo: {map: "大亚湾",roam: false,  label: {normal: {show: true,},emphasis: {show: true,textStyle: {color: "#000",},},},},//series就是地图上的数据(去掉就没有数据了)series: [{zoom: 100,type: "map",geoIndex: 0,aspectScale: 1.0, //长宽比showLegendSymbol: false, // 存在legend时显animation: false,data: data,},],};myChart.setOption(option);window.addEventListener("resize", function () {myChart.resize();});},},
};
</script>
<style scoped>
.echartsMapAllDemo {height: 100%;border-radius: 20px;/* background-color: azure; */
}
#myEcharts {width: 100%;border-radius: 20px;/* height: 672px; */height: 100%;
}
</style>

值得注意的有一下几点

1,注册地图时候,如果是市区级地图则不能通过"china"注册

如图(这会导致市区级地图缩小,且不好调位置)

//1.注册一个地图this.$echarts.registerMap("china", chinaJson);

正确做法是如下所示,同理geo/series里面的地图名也得注意更改

   //1.注册一个地图this.$echarts.registerMap("大亚湾", chinaJson);

2,悬浮窗内容的更改

其中,根据查询出来的数据最开始,当没有数据时显示的为NAN数据类型,如何判断此类型呢?

如下图代码所示,其中tooltip为悬浮窗显示字段,formatter为悬浮窗内容,要更改内容则可以直接从此处下手。

tooltip: {trigger: "item",// formatter: "{b}<br/>{c} ",formatter: function (params) {let name = params.name;let value = "";//判断字符类型是否是NANif(params.value !== params.value){value=0}else{value=params.value;}return name+"<br/>"+value;}

更好的写法:

tooltip: {trigger: "item",// formatter: "{b}<br/>{c} ",formatter: (params) =>params.name + "<br/>" + (params.value ? params.value : 0),},

3,地图省市区标签显示,和颜色的调整

如下代码所示:

lable中的normal{show:true}表示地级市标签显示

emphasis{}表示鼠标hover之后字段是否继续显示,以及显示时字体颜色。

roam属性表示地图是否可以被拖动

 geo: {map: "大亚湾",roam: false,  label: {normal: {show: true,},emphasis: {show: true,textStyle: {color: "#000",},},},},

写好组件后,父组件引用

<Map></Map>

Echarts+DataV.GeoAtlas地理小工具实现地图及其注意事项相关推荐

  1. echarts实现单个城市下所有区域地图

    一:需求:展示中国某一个市下面所有的区域地图并轮播高亮显示(以南京市为例) 二:数据来源  DataV.GeoAtlas地理小工具系列(写这篇文章的时候提示服务升级) 三:具体实现如下(vue实现) ...

  2. android倒计时小工具,为五一放假倒计时《倒数日小工具》

    俗话说好记性不如烂笔头,有时候记到脑子里并不一定是最保险,因为它总有短路和不灵光的时候,当你忘记精彩的球赛.周年纪念日.生日等重要时刻的时候,再拍着脑袋追悔莫及就为时已晚了.装上这款Android&l ...

  3. 使用Echarts将Excel数据转换成色彩地图HTML小工具

    朋友有个需求想要把excel数据转换成地图分布图,而且想要动态修改数据生成不同时间段的数据,于是我就想办法给他做了个工具,下面是所有代码逻辑,很简单代码,结尾附带源码文件,只有一个html文件,很方便 ...

  4. 高德地图(第二篇)测量距离小工具

    实现如下图一样的小工具 操作说明: 1.在地图上长按选点,第一个点添加起点marker,底部导航点为红色表示正在编辑 2.连续选点会弹出气泡计算总距离,底部导航点为红色表示正在编辑 3.点击气泡内垃圾 ...

  5. arcgis地图开发测面、测距、定位小工具

    arcgis小工具(测面.测线.定位等) 一下三个功能用到的arcgis文件汇总: import Graphic from "@arcgis/core/Graphic"; impo ...

  6. 腾讯地图SDK距离测量小工具

    以下内容转载自面糊的文章<腾讯地图SDK距离测量小工具> 作者:面糊 链接:https://www.jianshu.com/p/6e507ebcdd93 来源:简书 著作权归作者所有.商业 ...

  7. python 画一张中国地图 geopandas 城市地图 DATAV.GeoAtlas

    地图json获取: DATAV.GeoAtlas http://datav.aliyun.com/tools/atlas/#&lat=30.332329214580188&lng=10 ...

  8. Map Tile地图切片小工具

    Map Tile 地图切片小工具 想把一张高分辨率的图片切成像Google Maps那样256*256的分级小瓦片吗?想把这些图片按照在线地图的样式发布出来吗?LionGG带你走进新的一篇博客:Map ...

  9. 1.Electron-封装地图瓦片下载小工具(MapDownload) [配置开发环境]

    本软件完成状况 未完成~~ 目的 之前写了一个地图瓦片下载小工具 地图地图瓦片下载器(有兴趣可以去看看)由于是"黑框"版本的.想把它封装成界面版本.接下来我会用一段时间把我学习El ...

最新文章

  1. 【pmcaff专栏】项目管理失败?如何避免?
  2. Debug shell: Syntax error: “(“ unexpected
  3. ssh端口转发(之kettle ssh方式连接数据库)
  4. OS复习——设备管理习题
  5. 1.几大开发模型区别与联系
  6. html静态页面作业家乡网站设计—我的家乡-四川(9页) HTML+CSS+JavaScript 学生DW网页设计作业成品
  7. 手写的计算机论文范文,手写2000论文格式模板_科技论文手写格式模板
  8. 三人行新解:前辈、平辈和后辈
  9. Openssh7.4p1更换为8.2
  10. 云函数+微信公众号到个人微信
  11. 关于“论文他引次数”、“检索号”及“ESI 高被引论文”的查询方法
  12. Bootstrap导航和导航条
  13. 计算共形几何-代数拓扑
  14. 【python】数组内某数加一如何实现?
  15. 〖Python 数据库开发实战 - MySQL篇⑦〗- MySQL的用户管理与重设用户密码
  16. 基于51单片机的AD转换
  17. 2022阿里、腾讯、字节都在问的SQL数据库笔试题及答案都给你整理好啦
  18. SEO之怎么能写出高质量原创文章和伪原创文章
  19. 99、详解一个交换机能带动多少个网络监控摄像头
  20. 开源项目学习系列--02.天天酷音TTKMusicplayer

热门文章

  1. 雷神电脑装linux双系统,雷神911Target(双显卡)双系统Ubuntu安装显卡驱动和CUDA
  2. 使用webpack打包vue项目
  3. java 进程 守护进程_java jar 守护进程
  4. SQL优化之组合索引中字段的顺序
  5. Java核心技术卷1扫盲笔记
  6. 修复Windows 7 Aero特效无法显示
  7. 双硬盘安装win10和linux双系统,Windows10安装Ubuntu双系统教程(128G+1T双硬盘+GTX1060)...
  8. PCB生产工艺流程九:PCB生产工艺流程第7步 | 丝印
  9. 计算机辅助培训系统,UG NX7.5 计算机辅助培训系统CAST
  10. 一些自己面试unity3D 程序员的面经