【gis技术】地下管线数据mdb数据库转为shp

文章讲述了如何将mdb格式的地下管网数据,尤其是管线信息,通过arcgis转换为xy坐标点,然后利用编程匹配管线两端管点坐标生成geojson文件,再进一步转化为shp格式,以满足地图服务需求。过程中提到了管线数据的匹配问题和解决中文乱码的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

背景:
接触了某城市的地下管网数据,原始的普查数据都是以mdb数据库格式的形式提供的,本以为arcgis可以直接打开里面的管线矢量,没成想里面只有管点 管线的信息表,没有矢量数据,但是地图服务等得需要shp,因此需要找到一个方法转化一下。
思路:
首先看到数据里面的数据属性结构–将管点信息可以直接用arcgis转为xy展点就可以–管线需要写程序匹配一下管线两端的管点坐标形成geojson文件–将geojson转为shp–搞定
具体操作

  1. 查看mdb,两种方式,如果大家对管线标准不太熟悉可以看看该网站https://wenku.baidu.com/view/3888661c4873f242336c1eb91a37f111f0850d78.html?wkts=1683343191245
    excel导入打开
    在这里插入图片描述在这里插入图片描述在这里插入图片描述
    arcgis打开,选择相应的表拖进去就行
    在这里插入图片描述
  2. 管点信息展点
    在这里插入图片描述
    设置好相应坐标系 xy坐标字段就行了,然后导出shp。
  3. 管线需要写程序匹配
    对于程序编写可以采用入数据库或者直接读取mdb的形式,这里只讲思路
    污水表示例
    管点:
    在这里插入图片描述
    管线
    在这里插入图片描述

最后输出geojson数据格式

{
    "type": "FeatureCollection",
    "features": [
    {
      "type": "Feature",
            "geometry": {
                "type": "LineString",
                "coordinates": [
                    [502847.384761, 4142225.568719]
    [502834.497419,4142213.881936]
                ]
            },
            "properties": {

                "startPointNum":"WH13EN001C",
                "endPointNum":"WH13EN001B",
                …其他管线表里的属性,改成英文字段名称
            }
    }
    ……其他管线数据
    ]
}

注意在转换过程中管线可能匹配不到相关点,注意排查

  1. 将geojson转为shp
    使用https://mapshaper.org/转为shp,为了防止属性值中文乱码,可以将geojson用notepad++设置一下ansi或者utf8格式,然后导出的时候设置一下encoding=gbk。
  2. 完美解决一个小问题,哈哈
    在这里插入图片描述

大家如果对程序转换这块不太知道怎么弄,可以私信我。

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

gis分享

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值