淮河流域的轮廓数据获取及在Openlayers显示淮河流域的轮廓

一、数据的获取
  1. 数据是从湖泊-流域科学数据中心上面下载的,不过呢,下载之前需要进行实名认证,并且填写数据的用途。如果需要的是三级数据(更详细的数据),申请起来会更加麻烦(填写申请表、打印、盖章、签字等)。
  2. 网站上面要求是不要随意传播的,如果需要的话自己去申请就好,也不需要费用,只不过大概要等一天。如果实在急,可以私聊我发给你原始的数据(下边给出的数据不是原始数据,因为经过了我的处理)。
二、数据的转换
  1. 下载好数据之后,将以“.shp”为后缀名的文件转成geojson形式,就可以在openlayers显示出来了,当然也可以转成其他的形式。
  2. 我用的是geoserver来转换的。发布服务选择好坐标系就可以了,因为Openlayers默认的坐标系是EPSG:3857,所以我选择的是3857坐标系。
  3. 转换好的geojson数据不经处理是不能显示的,我删除了一些东西就能显示了。
  4. 这是淮河流域geojson格式边界数据的下载链接:
    https://www.aliyundrive.com/s/HT2rStLp4kk
三、数据的显示
  1. 我用的Openlayers版本是3点几的,显示轮廓的关键代码如下:
var layer = new ol.layer.Vector({
        title: 'add Layer',
        source: new ol.source.Vector({
            projection: 'EPSG:3857',
            url: "huai.json",
            format: new ol.format.GeoJSON()
        })
    });

map.addLayer(layer);
  1. 代码说明:上面的huai.json就是淮河流域边界数据的文件名,最后用map对象的addLayer()方法将图层加到地图上显示。
四、效果

以下是我做的项目的截图:
在这里插入图片描述
轮廓数据还是比较精确的,起码比自己随便勾画的精确。有什么不懂的可以留言。

评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值