highcharts 是提供地图数据包的:https://www.highcharts.com/docs/maps/map-collection

echart矢量地图或者地图绘制矢量图层,GeoJSON哪里提供呢?

dataV提供数据下载,DataV.GeoAtlas地理小工具系列

这些数据也是从高德上面来的,翻了下高德地图的api,其实可以直接获取

高德地图获取地图边界数据

区域查询获取边界数据

行政区域查询官方文档:行政区域查询-API文档-开发指南-Web服务 API | 高德地图API

restapi.amap.com/v3/config/district?key=您的key&keywords=山东&subdistrict=2&extensions=all

返回的polyline为坐标边界数据,用;分隔点坐标数组,在用,分隔出坐标数组即可。

AMap.DistrictSearch插件查询

搜索服务-参考手册-地图 JS API | 高德地图API

let opts = {

// 设置显示下级行政区级数 可选值:0、1、2、3等数字

subdistrict: 2,

// base:不返回行政区边界坐标点;all:只返回当前查询district的边界值,不返回子节点的边界值目前不能返回乡镇/街道级别的边界值

extensions: 'all',

level: data.level

}

var district = new AMap.DistrictSearch(opts);

district.search('河北省', function (status, result) {result.districtList[0].boundaries})

官方demo

  • 行政区边界查询-行政区划查询-示例中心-JS API 示例 | 高德地图API

  • 细线 ThinLine-线 Line-示例中心-JS API 示例 | 高德地图API

获取的数据,需要自己转GeoJSON数据,插件geojson - npm

var GeoJSON = require('geojson')
var data = [{name: 'Location A', category: 'Store', street: 'Market', lat: 39.984, lng: -75.343}]
var data2 = { name: 'Location A', category: 'Store', street: 'Market', lat: 39.984, lng: -75.343 }GeoJSON.parse(data, {Point: ['lat', 'lng']})
GeoJSON.parse(data2, {Point: ['lat', 'lng'], include: ['name']})
var data3 = [{x: 0.5,y: 102.0,prop0: 'value0'},{line: [[102.0, 0.0], [103.0, 1.0], [104.0, 0.0], [105.0, 1.0]],prop0: 'value0',prop1: 0.0},{polygon: [[ [100.0, 0.0], [101.0, 0.0], [101.0, 1.0], [100.0, 1.0], [100.0, 0.0] ]],prop0: 'value0',prop1: {"this": "that"}}
]
GeoJSON.parse(data3, {'Point': ['x', 'y'], 'LineString': 'line', 'Polygon': 'polygon'});

推荐阅读《GIS坐标系:WGS84,GCJ02,BD09,火星坐标,大地坐标等解析说与转换》

此方法只能获取当前行政区域边界,无法获取子区域边界。

行政区划浏览获取边界数据

DistrictExplorer(行政区划浏览)官方文档:概述-地图 JS API | 高德地图API

Feature直接取自GeoJSON。AreaNode之中无论父级区划(ParentFeature)还是子级区划(SubFeature),都可以获取地图坐标边界数据,但是 parentFeature 不是标准GeoJSON格式,需要自己转换。

//创建一个实例
var districtExplorer = new DistrictExplorer({map: map //关联的地图实例
})
var adcode = 100000 //全国的区划编码
districtExplorer.loadAreaNode(adcode, function (error, areaNode) {if (error) {console.error(error)areaNode.Feature return}//Feature直接取自GeoJSONvar subFeatures = areaNode.getSubFeatures()var parentFeature = areaNode.getParentFeature()
})

方法很简单。

百度地图获取行政区域边界

通过BMap.Boundary(),获取地图边界数据。

var bdary = new BMap.Boundary();

bdary.get(name, function(rs){rs.boundaries})

var map = new BMap.Map("container");
map.centerAndZoom(new BMap.Point(116.403765, 39.914850), 5);
map.addControl(new BMap.NavigationControl({type: BMAP_NAVIGATION_CONTROL_SMALL}));
map.enableScrollWheelZoom();function getBoundary(){var bdary = new BMap.Boundary();var name = document.getElementById("districtName").value;bdary.get(name, function(rs){       //获取行政区域map.clearOverlays();        //清除地图覆盖物var count = rs.boundaries.length; //行政区域的点有多少个for(var i = 0; i < count; i++){var ply = new BMap.Polygon(rs.boundaries[i], {strokeWeight: 2, strokeColor: "#ff0000"});//建立多边形覆盖物console.log(rs.boundaries)map.addOverlay(ply);  //添加覆盖物map.setViewport(ply.getPath());    //调整视野}});
}

百度地图的数据是 火星坐标 再加密的,个人不推荐使用百度地图上的数据获取到的经纬度。

转载本站文章《百度高德地图行政区域边界GeoJSON数据获取并绘制行政区域》,
请注明出处:百度高德地图行政区域边界GeoJSON数据获取并绘制行政区域 - WebGIS网页地图开发笔记手札 - 周陆军的个人网站

百度高德地图行政区域边界GeoJSON数据获取并绘制行政区域相关推荐

  1. AR+LBS街景实景红包PokemonGo游戏捉妖夺宝营销解决方案定制开发暨百度高德地图Unity插件SDK

    AR+LBS街景实景红包PokemonGo游戏捉妖夺宝营销解决方案定制开发暨百度高德地图Unity插件SDK 作者 komstone https://blog.csdn.net/komstone/ar ...

  2. 手机app调起百度高德地图

    需求: 通过手机app显示地图,点击去导航调起高德.百度地图app: 找了其他大神的,但经纬度不准确问题困扰了好久,去地图开放平台查了下文档,完美解决~ methods: {// 方法要传入需要标注地 ...

  3. 百度高德地图全国poi数据

    对于地图产品而言,某个地理位置周边的信息,称之为 POI .本文作者将简单地聊聊自己对于地图产品中POI的了解和看法. 作为一个标准的路痴,以前信奉的一句话是「地图长在嘴巴上」,到一个不熟悉的地方,多 ...

  4. 腾讯,百度,高德地图兴趣点(POI)的获取以及查询,逆解析解析

    1.POI数据介绍 POI数据介绍 POI是"Point of Interest"的缩写,中文可以翻译为"兴趣点".POI数据会包含各种信息,如前面提到的名称. ...

  5. gcoord: 转换WGS84、GCJ02、BD09坐标,转换百度高德地图坐标系

    做过地图相关开发的同学肯定会遇到这样一个问题:同样的经纬度坐标,在百度地图和高德地图上位置不一样. 关于坐标系 我们通常用经纬度来表示一个地理位置,但是由于一些原因,我们从不同渠道得到的经纬度信息可能 ...

  6. H5 百度高德地图导航

    H5 实现高德 百度 地图导航 可唤醒app 记住在引入高德地图 <script type="text/javascript" src="https://webap ...

  7. AR+LBS街景实景红包PokemonGo游戏捉妖夺宝营销解决方案暨百度高德地图Unity插件SDK

    1.AR+LBS街景实景红包.游戏.营销等解决方案 2.AR街景实景+百度高德LBS地图Unity插件SDK [3D/AR/VR/全息互动投影视觉开发] 近年来,全球玩家对于知名游戏Pokemon G ...

  8. html5唤起高德,h5页面唤醒百度高德地图

    唤醒APP链接 //高德地图 window.location.href="androidamap://viewMap?sourceApplication=appname&poinam ...

  9. python 乡镇轮廓 高德_百度高德地图小区景点边界轮廓实现

    经常的我们在使用地图功能时,会发现在选择一个小区或者一个热门景点的时候,地图上面会给出其边界轮廓,能够方便我们知道其范围大小,有时候在我们使用地图组件的时候,也会面临着类似的需求.比如在地图上面标识出 ...

最新文章

  1. vs2008格式化代码
  2. Dynamo涉及的算法和协议——p2p架构,一致性hash容错+gossip协议获取集群状态+向量时钟同步数据...
  3. leetcode算法题--只有两个键的键盘
  4. 雅虎因性别歧视成被告 不过这次遭歧视的是男性
  5. 百度智能云一周连签三个新基建大单,“非对称竞争”优势凸显?
  6. idea:打包jar(原文by曲高终和寡)
  7. 每天一道LeetCode-----顺时针旋转n×n矩阵90度
  8. MyEclipse配置Tomcat 6
  9. 利用计算机管理分区,win7增加磁盘分区教学 利用磁盘管理增加分区
  10. Python稳基修炼的经典案例14(计算机二级、初学者必会字符格式处理)
  11. 项目经理如何确保工程质量
  12. 趣图 | 著名的悖论蒙提霍尔问题到底是什么?
  13. EXCEL插件《二维码标签工具》
  14. 2021GKCTF Misc excel骚操作--详解
  15. 产业分析:短视频及直播营销报告
  16. 高价iPhone陷低谷 苹果又推2799元的HomePod 你买吗?
  17. python的if语句怎么写-Python的if语句
  18. nvcc --version: nvcc不是内部或外部命令
  19. Font-AweSome在Vue中的使用
  20. OC10_数组的内存管理

热门文章

  1. PowerDesigner 把Comment复制到name中和把name复制到Comment
  2. Apollo 分布式部署指南
  3. 数据结构C语言实现顺序链表基本操作(插入,排序,合并)
  4. “香山雨男”初临香八拉
  5. partprobe同步分区表
  6. pycharm如何对json文件格式化
  7. P5514 [MtOI2019]永夜的报应【题解】
  8. Oracle插入数据每5000条提交一次
  9. Mysql 12 复制1
  10. [java]程序员的爱情表白