千家信息网

GIS开发中csv如何转换空间图层数据

发表于:2025-02-21 作者:千家信息网编辑
千家信息网最后更新 2025年02月21日,这期内容当中小编将会给大家带来有关GIS开发中csv如何转换空间图层数据,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。在arcmap中,可以将excel或者csv数
千家信息网最后更新 2025年02月21日GIS开发中csv如何转换空间图层数据

这期内容当中小编将会给大家带来有关GIS开发中csv如何转换空间图层数据,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

在arcmap中,可以将excel或者csv数据处理成空间点数据,使用nodejs语言,开发将csv文件转换成geojson空间图层数据。

具体实现的代码如下:

//excel文件可以另存为csv文件

const fs = require('fs');

//npm install csv,导入csv的开发包

const csv = require('csv');

//定义geojson的数据集节点

let geojsondata = {

type: "FeatureCollection",

features: [],

};

//读取csv文件

fs.readFile('csv文件路径', {

encoding: 'utf-8'

}, (err, res) => {

csv.parse(res, {

//设置csv文件的分隔符

delimiter: ','

}, (err, records, info) => {

//根据每条记录中,坐标点的顺序构建点feature

for (let _idx = 1; _idx < info.records; _idx++) {

try {

let _coordx = parseFloat(records[_idx][3]);

let _coordy = parseFloat(records[_idx][4]);

//构建点feature,空间类型为点数据

let pointfeature = {

type: "Feature",

geometry: {

type: "point",

coordinates: [_coordx, _coordy],

},

//属性根据需求进行添加

properties: {

id: String(new Date().getTime()),

prop1: records[_idx][0],

prop2: records[_idx][1]

},

};

//将feature加入到集合中

geojsondata.features.push(pointfeature);

} catch (error) {

console.log(_idx);

}

}

//将geojson的结果输出到文件

fs.writeFile("geojson文件输出", JSON.stringify(geojsondata), () => {

});

});

});

另外坐标系(crs)等信息,可以在geojson的根文件中进行添加。
输出的geojson文件,在qgis中测试是否显示正确。

上述就是小编为大家分享的GIS开发中csv如何转换空间图层数据了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注行业资讯频道。

0