Topojson:如何在GIS软件中设计有效的多边形、线、点?

2024-01-27

到目前为止,我一直使用网络上的 GIS 文件,这些文件为我提供了行政多边形、河流、陆地等。然后我将它们转换为 Topojson 格式以提供 D3js。

今天我必须在 Quantum GIS (QGIS) 中设计自己的图层 (wine_areas)。同样,此 .shp 文件稍后将转换为 Topojson 格式。

在 GIS 软件(.shp 文件)中设计形状、线条、点时:我应该担心哪些关键方面,以及如何才能使 .shp 和最终的 Topojson 文件有效并具有预期的类型?大多数情况下,相邻多边形共享其公共弧线等。


我特别想知道如何在 GIS 软件中设计我的 topojson“弧”:

  • 我应该把我的形状放在这样的附近吗[][]
  • 我应该设计一个形状并用线切割它吗[|]
  • 需要什么级别的精度? (以及如何知道)

和其他提示。


In QGIS:

  1. Go to Settings > 捕捉选项,选中底部的两个框,然后选中您正在处理的图层左侧的框。设置大于 0 的容差。我喜欢以像素为单位设置容差,并将其设置得足够大,以便在顶点捕捉时它会很明显。 10px 对我来说效果很好。

  2. Use the 拓扑检查器插件 http://docs.qgis.org/2.0/en/docs/user_manual/plugins/plugins_topology_checker.html(启用与Plugins > 管理和安装插件...)以查看是否存在任何不希望出现的间隙或重叠。安装后,通过以下方式访问Vector > 拓扑检查器. Hit 配置在弹出的面板上,在第一个框中选择您的图层。在第二个框中,选择不得有重叠然后单击Add Rule,然后重复不得具有无效的几何形状。根据您的设计,您可能还需要不得有间隙

设计数据时,您可以绘制彼此相邻的形状,而不是先绘制然后分割。如果您希望要素在 TopoJSON 中共享弧,请确保形成该弧的顶点对齐在一起。 Shapefile 不保存拓扑,但对齐在一起的两个顶点将具有相同的坐标,并且拓扑将由 TopoJSON 实用程序推断。

至于需要多少精度,TopoJSON 对点进行了量化,你可以调整这个值。解释说,知道需要多少数学知识here https://github.com/mbostock/topojson/wiki/Command-Line-Reference#quantization。如果您获得的点足够接近,可以将它们量化到同一点,则无需担心捕捉问题。

写完所有这些后,我才意识到这个问题有多老了......

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Topojson:如何在GIS软件中设计有效的多边形、线、点? 的相关文章

随机推荐

  • 不区分大小写的令牌匹配

    是否可以将语法设置为不区分大小写匹配 例如一条规则 checkName CHECK Word 会匹配check name也CHECK name 的创造者PEGKit https github com itod pegkit here 当前执
  • Perl 中的 Web 服务客户端

    我是客户端 我希望调用 Web 服务的方法 我有一个 Web 服务地址 svc 后缀 并且有该方法的名称 返回值及其参数 该服务是通过 WCF HTML 端点 实现的 我希望通过以下方式调用这些方法SOAP Lite 我应该为 URI 代理
  • Facebook Connect“下一个”错误

    我正在尝试使用新的 Facebook 身份验证系统 但无法登录 我收到以下错误消息 API错误代码 100 API错误描述 无效参数 错误消息 next 不属于应用程序 发送到 Facebook 的网址是 请注意 网址中的 Next 变量是
  • 在一个查询中获取多个表

    一小时内发了三十个帖子 所以我很抱歉 但我没有得到我想要的 我会尝试解释更多 我有两张桌子 帖子 我想在这一页中显示所有帖子和评论 购买 1 条查询 我在帖子表中 100 个帖子 我在评论表中有 20条评论 我试试这个代码 qq mysql
  • 当我在拒绝后重新提交应用程序时,是否需要增加版本号? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 我的应用程序被拒绝了 所以我已修改它并准备重新提交 我第一次提交的时候是1 0版本 这次重新提交是否需要增加版本号 不 您不需要更新版本号
  • C++ 主控/工人

    我正在寻找跨平台 C master worker 库或工作队列库 总体思路是 我的应用程序将创建某种任务或工作对象 将它们传递给工作主机或工作队列 后者又会在单独的线程或进程中执行工作 为了提供一些上下文 该应用程序是一个 CD 抓取器 我
  • sklearn MinMaxScaler() 与 groupby pandas

    我有两个特点rank and ratings不同日期从电子商务网站抓取的不同类别下的不同产品 ID 此处提供示例数据框 import pandas as pd import numpy as np import warnings warni
  • 使用 AVFoundation 的视频的第一帧

    我正在尝试使用 AVFoundation 中的类获取视频的第一帧 但它似乎根本没有得到图像 我的代码目前看起来像这样 AVURLAsset asset AVURLAsset URLAssetWithURL NSURL URLWithStri
  • 如何本地和远程删除 Git 分支?

    尝试删除远程分支失败 git branch d remotes origin bugfix error branch remotes origin bugfix not found git branch d origin bugfix er
  • 运行项目 net core 时出现错误 "{"state Machine":{"<>1_ state":-2,"<>t__builder":{"

    当我运行项目 netcore 时 我收到一条消息 stateMachine 1 state 1 t builder 我不知道如何解决这个问题 我在命令行中看到错误 Microsoft AspNetCore Diagnostics Devel
  • Python Pandas 将一系列字符串连接成一个字符串

    在 python pandas 中 有一个由 str 值构成的 Series dataframe 列可以组合成一个长字符串 df pd DataFrame text pd Series Hello world index a b c 目标
  • 具有布尔字段默认初始化的结构?

    我有以下用例 一个带有一些布尔值和 int 变量的结构 struct a int field1 bool field2 bool field3 我正在重构这段代码 并为 struct 编写一个构造函数 问题是字段的默认初始化 我并不是在这里
  • 如何使用 jQuery 查询 neo4j 图

    随着我的尝试 早期版本已更新 我确实知道一些 javascript 并且我有一个可用的 neo4j 数据库 我可以在控制台中使用 cypher 进行查询 另外 这个卷曲也有效 卷曲 X POST http localhost 7474 db
  • 以星号 * 开头的 Perl 标识符代表什么?

    我有这个子例程 其标识符定义如下 VALID NAME REG EX a zA Z0 9 MACRO VALID NAME MACRO VALID NAME 我进一步查看了该文件 它们被引用为 MACRO VALID NAME 我猜它是用字
  • TreeView 和实体框架绑定

    我是 WPF 和 EF 的新手 我看过但找不到适当的帮助 这就是我所拥有的 实体框架 报告定义 ParentID and 报告定义 SectionID are 节 id节 报告定义示例 and 部分示例 这就是我想介绍的内容 TreeVie
  • 如果键不存在,为什么 std::map operator[] 创建一个对象?

    我很确定我已经在某处看到过这个问题 comp lang c 谷歌似乎也没有在那里找到它 但是在这里快速搜索似乎没有找到它 所以这里是 为什么std map operator 如果键不存在 则创建一个对象 我不知道 但对我来说 如果与大多数其
  • 使用 blogdown 创建一个新的静态页面,其主题与主站点相同

    我正在使用 R 包blogdown创建一个由hugo驱动的网站 具体来说 我正在使用 gcushen hugo academic 主题 xieyihui 和 apreshill 的教程对于入门非常有帮助 并且添加新帖子很明确 但是使用与整个
  • 在 Yii 框架上防止使用 ajaxButton/ajaxSubmitButton 加载 jQuery 资源

    我的布局上有 jQuery 加载资源 我想使用CHtml ajaxButton ajaxSubmitButton 但是当我在运行时将它与另一个渲染一起使用时 它会再次加载 jQuery 资源并出错 如何防止脚本加载
  • 在 Clojure 中,如何从变量或函数中获取名称字符串?

    我想获取变量的字符串表示形式 例如 def my var 如何获取字符串 my var 从符号my var And defn my fun 如何获取字符串 my fun 从函数my fun user gt def my var user m
  • Topojson:如何在GIS软件中设计有效的多边形、线、点?

    到目前为止 我一直使用网络上的 GIS 文件 这些文件为我提供了行政多边形 河流 陆地等 然后我将它们转换为 Topojson 格式以提供 D3js 今天我必须在 Quantum GIS QGIS 中设计自己的图层 wine areas 同