当前位置: 首页 > news >正文

GIS地图服务数据可视化

GIS地图服务数据可视化

    • OSM(Open Street Map,开放街道地图)
    • Bing地图(必应地图)
    • Google地图(谷歌地图)

地图服务数据可视化是根据调用的地图服务请求Web服务器端的地图数据,实现地图数据可视化的过程。通过地图服务、地图、要素和属性数据可以在多种类型的客户端应用程序中使用。下面介绍几种常见的地图服务,重点介绍利用Leaflet加载这些地图服务的方法,包括OSM、Bing地图、Google地图、天地图地图、百度地图、高德地图、智图、ArcGIS瓦片地图。

OSM(Open Street Map,开放街道地图)

是一个网络地图协作计划,目标是创造一个内容自由且能让所有人编辑的世界地图,也称为开源wiki地图。OSM数据开源可以被用户自由下载使用,OSM数据主要从网站(https://www.openstreetmap.org/)中的“导出”界面进行获取。

基于Leaflet加载OSM的主要实现步骤如下。
(1)新建一个Web网站,将Leaflet开发库和样式文件(leaflet.js和leaflet.css)复制到网站的某一个目录下。
(2)在新建网站中创建一个HTML网页,在网页的中引入leaflet.js和leaflet.css。
(3)在HTML网页的中新建一个div作为地图容器,设置其id为“leaf_map”,并设置其高度。
(4)在脚本区域编写代码,实现一个加载地图的函数init(),即在该函数中分别创建Leaflet的Map类、Layer类(L.TileLayer)的对象,通过addTo()方法将图层加载到地图容器中,并在Map类的属性参数中设置参考坐标系、显示中心和显示级数等。
(5)在HTML网页中由onload事件处理函数调用加载地图的函数init(),完成地图加载显示功能。
下面以一个墨卡托坐标系的OSM世界地图服务为例,进行地图的加载显示,地图服务的下载地址为http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png。
代码如下:
在这里插入图片描述

Bing地图(必应地图)

是微软必应搜索引擎的一项功能,它提供了网络地图服务。Bing地图包括街景地图、鸟瞰图、街边地图和3D地图,全面支持国内外用户进行地图浏览和出行规划,并提供地点搜索、公共交通线路查询、自驾车导航、路况查询和位置定位等功能。使用Bing地图,首先要去官网注册一个微软账户,申请一个Bing地图的密钥,然后就可以在Bing地图集合中使用任意底图。

下面实例实现了Bing地图的加载显示,该服务是一个墨卡托坐标系的瓦片地图服务,加载后的效果如图
在这里插入图片描述
基于Leaflet加载Bing地图的主要实现步骤如下。
(1)加载OSM的过程,先定义一个地图容器。
(2)在区域中添加leaflet-bing-layer.js脚本的引用,该插件用于加载Bing地图的显示,下载地址为https://github.com/digidem/leaflet-bing-layer。
(3)定义Bing图层(创建与实例化L.TileLayer.Bing类的对象),并添加到Map容器中。
代码如下:
在这里插入图片描述

Google地图(谷歌地图)

是Google公司提供的电子地图服务,包括局部详细的卫星照片。该服务提供的功能有全球行政区划图、道路网、卫星影像和地形图。
下面以一个墨卡托坐标系的Google地图服务为例,实现地图的加载显示功能,该服务的下载地址为http://mt1.google.cn/vt/lyrs=m@207000000&hl=zh-CN&gl=CN&src=app&x={x}&y={y}&z={z}&s=Galile
基于Leaflet加载显示Google地图的主要实现步骤如下。
(1)加载OSM的过程,先定义一个地图容器。
(2)定义Google地图图层(创建与实例化L.TileLayer类的对象),并加载到地图容器中。
代码如下:
在这里插入图片描述

http://www.lryc.cn/news/166023.html

相关文章:

  • java 获取实体类的反射 Field用法(获取对象的字段名和属性值) 包含注解值 - 如何用枚举类映射获取数据库字段名
  • 日志平台搭建第六章:logstash通过kafka通道采集日志信息
  • mysql的索引分类
  • 【校招VIP】java语言考点之并发相关
  • nginx实现路由重定向功能 避免服务器出现 404 Not Found
  • Flask+pyecharts+SQLAlchemy,统计图的数据存放在mysql中,综合版
  • SQL注入类型判断
  • ElasticSearch的安装部署-----图文介绍
  • Unity粒子系统ParticleSystem各模块及其参数学习
  • vue3实现卡片翻牌
  • 算法训练营day45|动态规划 part07:完全背包 (LeetCode 70. 爬楼梯(进阶)、322. 零钱兑换、279.完全平方数)
  • 【大模型】更强的开源可商用的中英文大语言模型baichuan2来了,从零开始搭建
  • ElasticSearch系列-简介与安装详解
  • Layui + Flask | 表单组件(组件篇)(07)
  • 【实践篇】Redis最强Java客户端Redisson
  • esxi扩容磁盘
  • 核心实验21_BGP高级(了解)(配置略)_ENSP
  • 宝塔安装python和openssl
  • TDengine 3.1.1.0 来啦!更新如下
  • YSA Toon (Anime/Toon Shader)
  • LabVIEW通过IEC61508标准验证ITER联锁系统
  • 如何处理日期和时间?
  • 【开发】视频集中存储/直播点播平台EasyDSS点播文件分类功能优化
  • 论文多级编号-word2010
  • Jetpack Compose基础组件之 — Text
  • 动手学深度学习——Windows下的环境安装流程(一步一步安装,图文并配)
  • 打印日志遇到的问题,logback与zookeeper冲突
  • 【Node.js操作SQLite指南】
  • PyTorch之张量的相关操作大全 ->(个人学习记录笔记)
  • ChatGPT生成内容很难脱离标准化,不建议用来写留学文书