麻辣GIS微信平台

更多 GIS 干货

微信关注不错过

「GIS笔记」Mapshaper文件输入命令-i(input)

文件输入(Input)是mapshaper最基本的命令,所有的数据操作均需要使用该命令。mapshaper对文件输入做了不少工作,针对不同的文件格式,会分别有不同的文件解析参数。本文做一个整理,版本基于0.6.x,后续如果有更新,大家可以留言哈。

-i(input)参数

通常情况下我们不需要手动指定这个参数的,一般的教程里也不会用这个参数,因为默认情况下mapshaper后面跟文件名的话,mapshaper会在解释的时候自动加上这个参数。

JSON文件可以是 GeoJSON、TopoJSON 或数据记录数组。TopoJSON 输入文件中的每个命名的几何对象都作为单独的图层导入。

注意,Mapshaper 不完全支持 M 和 Z 值的 Shapefile。如果你的shp文件中有M和Z值,数据会丢失。

默认情况下,多个输入文件是分开处理的,combine-files并merge-files除外。

选项参数

<files>files= 要输入的文件(空格分隔的列表)。

combine-files将多个文件导入到具有共享拓扑的单独图层。对于生成包含多个几何对象的单个 TopoJSON 文件很有用。

merge-files(已弃用)将多个输入文件中的特征合并到尽可能少的图层中。比较推荐的方式:使用 -i combine-files导入文件到单独的图层,然后使用-merge-layers命令合并图层。

snap 用于将小距离阈值内的坐标合并。这个选项主要应用在相邻多边形中的坐标有差异。捕捉距离是平均线段长度 * 0.0025。

snap-interval= 指定snap选项的捕捉距离。

precision= (已弃用)将所有坐标四舍五入到指定的精度,例如0.001. 建议在导出时设置坐标精度,使用-o precision=来设置。

no-topology 跳过拓扑检查,用来加快大文件的处理速度。例如,使用-filter的时候不需要拓扑检查,就可以使用这种方式。

encoding= 指定用于读取 .dbf 文件和分隔文本文件的编码。如果不设置encoding选项,mapshaper 将尝试检测 .dbf 文件的编码。也可以使用 .cpg 文件设置 .dbf 文件编码。

id-field= 将TopoJSON 或者 GeoJSON中特定“id”属性的值导入。

string-fields=.csv中的字段以字符串形式导入(例如 FIPS、ZIPCODE)。使用string-fields=*将所有字段导入为字符串。

field-types= 用于指定导入分隔文本的数据类型,采用逗号分隔的字段名称列表。例如FIPS:str,zipcode:str。可识别的类型提示包括:str:string:num:number。如果没有类型提示,包含看起来像数字数据的文本数据(如邮政编码)的字段将被转换为数字。

csv-skip-lines= 导入 CSV 文件开头要跳过的行数。

csv-lines= 设置从 CSV 文件导入的数据记录数(默认为全部)。

csv-field-names=逗号分隔。分配每个字段的名称列表。可以与 csv-skip-lines=1 结合使用来替换现有字段标题集中的名称。

csv-fields=逗号分隔。设置从 CSV 格式的导入文件时需要读取的字段列表。读取文件时会过滤字段,从而减少导入非常大的 CSV 文件所需的内存。

decimal-comma 设置导入使用逗号分隔的格式化数字。如格式:(1.000,01 1 000,01均作为 1000.01 导入)。

csv-dedup-fields 对具有重复名称的 CSV 字段分配唯一名称。

csv-filter= 用JavaScript 表达式过滤CSV的数据,读取文件时会过滤记录,从而减少导入非常大的 CSV 文件所需的内存。

json-path= 指定读取JSON数据时的路径。例如,json-path=data/counties会从数据中读取出以下结构的 JSON 对象{"data": {"counties": []}}。

name= 重命名导入的层(或层)。

示例

# 使用utf-8方式读取文件,并查看其实信息。
mapshaper countries_wgs84.shp encoding=utf-8 -info

所有文章

点击查看系列全部文章--> 「更新中」Mapshaper入门学习笔记

相关阅读

麻辣GIS-Sailor

作者:

GIS爱好者,学GIS,更爱玩GIS。

声明

1.本文所分享的所有需要用户下载使用的内容(包括但不限于软件、数据、图片)来自于网络或者麻辣GIS粉丝自行分享,版权归该下载资源的合法拥有者所有,如有侵权请第一时间联系本站删除。

2.下载内容仅限个人学习使用,请切勿用作商用等其他用途,否则后果自负。

手机阅读
公众号关注
知识星球
手机阅读
麻辣GIS微信公众号关注
最新GIS干货
关注麻辣GIS知识星球
私享圈子

留言板(小编看到第一时间回复)