Shapefile 到 TopoJSON 转换问题

2024-03-08

I'm trying to convert a shapefile to GeoJSON and then to TopoJSON as described in Let's Make a Map http://bost.ocks.org/mike/map/#converting-data. Somewhere along the chain, something gets corrupted and my resulting image looks like below: Corrupt VT map

我的工作流程如下:

  1. 从以下位置下载形状文件:http://vcgi.vermont.gov/warehouse/search_tools http://vcgi.vermont.gov/warehouse/search_tools- 我正在与大师镇边界 http://maps.vcgi.org/gisdata/vcgi/packaged_zips/BoundaryOther_BNDHASH.zip数据,特别是“边界 BNDHASH_regiontowns.shapefile”。
  2. 将 shapefile 转换为 GeoJSON

    ogr2ogr -f GeoJSON vt_towns.json Boundary_BNDHASH_region_towns.shp
    
  3. 将 GeoJSON 转换为 TopoJSON

    topojson -p TOWNNAME -p CNTY -o vt.json vt_towns.json
    
  4. 插入基本模板,并对 Mike Bostock 的示例进行一些小修改

    <!DOCTYPE html>
    <meta charset="utf-8">
    <style>
    
    /* CSS goes here. */
    
    </style>
    <body>
    <script src="http://d3js.org/d3.v3.min.js"></script>
    <script src="http://d3js.org/topojson.v1.min.js"></script>
    <script>
    
        var width = 960,
            height = 1160;
    
        var svg = d3.select("body").append("svg")
            .attr("width", width)
            .attr("height", height);
    
        var projection = d3.geo.transverseMercator()
                .rotate([72.57, -44.20])
                .translate([175,185])
                .scale([100]);
    
        // Define path generator
        var path = d3.geo.path()
            .projection(projection);
    
        d3.json("vt.json", function(error, vt) {
    
            var vermont = topojson.feature(vt, vt.objects.vt_towns);
    
            svg.append("path")
                .datum(vermont)
                .attr("d", path);
    
        });
    
    </script>
    

这不是我的第一张 d3 地图(这是我的第二张!),但我非常不知道出了什么问题。我最好的猜测是,它与包含许多形状文件及其附带文件的解压缩数据集有关。


您的文件似乎使用网格坐标系,请使用该选项-t_srs EPSG:4326获取纬度和经度:

ogr2ogr -f GeoJSON -t_srs EPSG:4326 vt_towns.json Boundary_BNDHASH_region_towns.shp

然后继续您的工作流程。

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

Shapefile 到 TopoJSON 转换问题 的相关文章

  • TypeScript D3 v4 导入不起作用

    我正在尝试在 D3 之上构建一个小型 JS 库来绘制折线图 我对整个场景相当陌生 但我认为跳入 深渊 是最好的学习方式 这是我的内容package json name d3play02 version 1 0 0 description m
  • 带水平滚动的 C3 / D3 条形图

    我正在创建一个 c3 条形图 其中每个条形代表在给定的一周内加入某个计划的人数 数据只是一个对象数组 其中包含 week of people week of people 等 理想情况下 我希望图表中显示最近 6 周的数据 但我希望能够水平
  • D3JS:将时间序列数据中缺失的时间值插入为空

    我正在尝试使用 D3 绘制时间序列数据 但遇到了缺少时间戳和宽度调整的问题 数据通常每 5 分钟发布一次 但由于某种原因有时可能没有时间戳 例如 上午 11 45 之后 下一个时间戳将为 23 45 我想在中间有一个间隙 而不是在该时间段内
  • 如何将数据驱动的 d3JS 图与 Shiny 集成?

    昨天我问 https stackoverflow com questions 29301352如何将带有独立数据的 d3js javacript 文件引入 Shiny 中以绘制力网络图 现在我正在寻找下一步 server R 将读取 JSO
  • 熊猫到D3。将数据帧序列化为 JSON

    我有一个包含以下列且没有重复项的 DataFrame region type name value 可以看作是一个层次结构 如下所示 grouped df groupby region type name 我想将此层次结构序列化为 JSON
  • Extjs + D3:渲染冲突

    当我结合 Extjs 和 D3 时 我正在挖掘一些非常有趣的东西 一般来说 ExtJS渲染整个页面的主框架 D3渲染该框架中某个div的动态图 由于Extjs中的渲染逻辑相当复杂 因此我放置D3渲染逻辑的位置似乎至关重要 这里我尝试了两种
  • 如何在 Three.js 中将 geoJSON 绘制为网格而不是线条,并填充颜色?

    我正在使用 Three js 制作一个地球仪 并将添加一些数据层 所有图层都将从 geoJSON 创建 我已将其设置为使地球仪 第一个数据文件 包含国家 地区 显示为线条 这使用三GeoJSON https github com jdomi
  • d3 强制添加和删除节点

    我根据我在书中看到的一些代码整理了以下 jfiddle http jsfiddle net hiwilson1 o3gwejbx 2 http jsfiddle net hiwilson1 o3gwejbx 2 总的来说 我关注正在发生的事
  • 将数据从 csv 复制到 D3 中的数组中

    我知道这个问题以前曾被问过 但由于某种原因 他们的解决方案对我不起作用 我正在尝试使用 CSV 文件中的数据填充两个数组 其中 name value alpha 34 beta 12 delta 49 gamma 89 我现在正在尝试的是
  • d3树计算所有孩子的数量

    我有一个基于以下内容的 d3 树 http bl ocks org mbostock 1093025 http bl ocks org mbostock 1093025 我如何计算所有孩子的数量 我已经尝试过这个 但是它计算了树中的所有行
  • 如何在 Apex 中向 D3 力定向图添加动态图例?

    我在 Apex 中构建了一个 D3 力图 基本上就像http bl ocks org mbostock 1093130 http bl ocks org mbostock 1093130 or http bl ocks org mbosto
  • D3.js - 如何迭代数据集中的子数组

    我试图让 d3 迭代数据中的子数组并生成多个饼图 这是完整的代码 来自https gist github com mbostock 1305111 https gist github com mbostock 1305111 and htt
  • NVD3 - 更新数据时不均匀的刻度

    当我更新现有 NVD3 图表中的数据时 沿 x 轴的刻度不以固定间隔呈现 我正在创建一个multiBarChart数据来源于d3 json 数据表示某个日期范围内的点击次数 我有一个单独的日期范围选择器 可以更新图表的数据 我有以下内容来创
  • 数据与线的日期和时间转换

    我使用 D3 V5 创建了此图表 另外 我已在小提琴上附加了示例数据 您可以点击此处查看 https plnkr co edit pINxcS9yt9AuJmSk02Fs p preview 我已经包括了tick函数代码块 它在向左滑动的路
  • d3.js:在树布局中展开多个路径

    My JSON contains same node names in different paths I would like to be able to open all children with the same name or h
  • 如何将多个 topojson 文件合并为单个 topojson 文件

    我有美国州 topojson 和加拿大州 topojson 我想将它们合并到单个文件中 有人可以告诉我如何将两个文件合并为单个 topojson 文件 我在创建地图时使用墨卡托投影 我遇到了类似的问题 最终将 topojson 文件转换为
  • d3 同步 2 个独立的缩放行为

    我有以下 d3 d3fc 图表 https codepen io parliament718 pen BaNQPXx https codepen io parliament718 pen BaNQPXx 该图表的主要区域有缩放行为 y 轴有
  • 如何使用 d3.v4 中的 JSON 数据创建树布局 - 不使用 stratify()

    我正在尝试将一些 d3 代码从 v3 更新到版本 4 我有一个使用 JSON 数据的树形图 d3 v4 示例展示了如何使用 stratify 将表格数据 例如flare csv 转换为分层数据https bl ocks org mbosto
  • D3:如何在Groups of Force布局节点上绘制多个凸包?

    我试图在力布局中的所有组上绘制凸包 但我只画出了一半的凸包 当 D3 尝试绘制其余的船体时 控制台返回错误 元素尚未创建 然而 当我检查控制台中的 groups 变量时 所有组数据都在那里 x y 数据都设置得很好 见下图 我什至尝试在ti
  • 使用 D3.js 解析时间序列数据

    是时候寻求帮助了 我已经学习 D3 js 几个星期了 我才开始觉得我理解了其中的 10 哈哈哈 我正在尝试生成一个非常简单的线图 只要数据非常简单 我就可以做到这一点 但我的原始数据源具有 UTC 时间戳和实数 小数 这会导致任何超出简单范

随机推荐

  • 如何解决 ClassNotFoundException?

    我正在尝试运行 Java 应用程序 但收到此错误 java lang ClassNotFoundException 冒号后面是缺少的类的位置 但是 我知道该位置不存在 因为该类位于其他地方 我怎样才能更新该类的路径 和类路径有关系吗 类路径
  • 我如何将小胡子中的变量大写

    我的小胡子模板中有一个名为 type 的变量 我想使用标题大小写将 type 的值大写 这可能吗 考虑到该类型不是网页上显示的类型 它存储一个值 type 你可以将它包裹在一个span并使用CSS CSS capitalize text t
  • 用C语言从M68k RAM地址获取特定字节

    通过 IDA 反汇编程序我到达了这个地址 0010FD74 00 00 00 00 00 00 03 00 00 00 00 00 82 03 80 02 现在我需要给定地址来获取特定字节 例如第 7 个位置有 03 我尝试过使用C语言来做
  • Android:将imageview转换为位图,转换为灰度,位图转换为imageview

    当我编译此代码时 我没有在 Eclipse 上收到任何警告 但是当我在设备或模拟器上运行它时 该程序被迫关闭 public class MainActivity extends Activity ImageView img Button b
  • 如何卸载 Ruby on Rails 并进行全新安装?

    我正在学习 Rails 教程 我遇到 RVM 版本问题并且收到很多错误 我想从 Ruby Rails Gemfiles 等的干净版本开始 谁能给我一些关于如何卸载 Ruby on Rails 环境的简短说明 尝试这个 rvm get hea
  • 在 PHP 7 中全局启用“strict_types”

    我目前正在将我的网站从 PHP5 迁移到 PHP7 并且我已经开始使用添加的严格类型功能 然而 这要求我以下行开头所有文件
  • 如何在 macOS 沙盒环境中从 C++ 运行 AppleScript 而不会侵犯权利

    我正在尝试使用AppleScript来控制ApplePhotos来自 QT C 应用程序中的应用程序 该应用程序必须在 macOS App Store 所需的沙箱环境中运行 我尝试通过 QProcess 启动来运行 AppleScripto
  • 如何使 CDT/Eclipse 与 C++11 线程一起工作?

    我尝试在 Eclipse 中测试 C 11 线程的示例 但我在运行程序时收到此消息 抛出 std system error 实例后调用终止 什么 不允许操作 我的系统 ubuntu gcc 4 7 Program include
  • Ksoap2 Android - 如何为复杂对象的子属性指定命名空间?

    我正在尝试使用 KSoap2 Android 将复杂对象上传到 WCF Web 服务 但执行此操作时遇到一些困难 当我使用SoapUI并手动填写数据时 我已经成功调用了Web服务 成功的SoapUI生成的请求如下
  • 错误 - Jenkins 检测到正在运行多个实例

    我正在将 Jenkins 作为 Windows 服务运行 一切都很好 突然从今天中午开始 我在打开它时开始看到以下错误 Jenkins 检测到您似乎正在运行多个实例 Jenkins 共享相同的主目录 这 詹金斯非常困惑 你可能会遇到奇怪的情
  • 构建期间生成 T4 代码,自定义程序集参考

    我有一个 T4 模板 可以处理项目中的多个 tt 文件 我还定义了一些自定义类来帮助完成代码转换过程 lt template language C hostspecific True debug True gt lt output exte
  • 应该使用哪个:数组与链表?

    我计划实现一个有界队列而不使用Queue
  • Google Cloud 公共主机名

    是否有任何解决方案可以像其他云平台一样在谷歌云中获取公共主机名 目前机器名称是 计算机名 c googleprojectid internal 但我想要类似在亚马逊或Azure中的东西 计算机名 cloudapp net 您可以使用谷歌云D
  • 选择没有任何类的元素[重复]

    这个问题在这里已经有答案了 我需要通过 jQuery 选择器找到页面中没有类的所有跨度 Example span class Cool do not found me span span me me take me please span
  • Azure Functions - 导入自定义节点模块

    我正在尝试使用 Azure Functions 我正在尝试在我的函数中使用第三方节点模块 但是 我一直无法弄清楚如何导入它 id aaaaaaaa bbbb cccc dddd eeeeeeeeeeee requestId aaaaaaaa
  • Django 测试:测试表单字段的初始值

    我有一个观点 应该根据 GET 值为表单字段设置初始值 我想测试一下 我目前正在使用Django的测试客户端 http docs djangoproject com en dev topics testing module django t
  • 是否有命令行的版本控制系统抽象?

    现在 如此多的小型开源项目通过其版本控制系统 发布 我有数十个经常需要的存储库 通常位于多台计算机上 我正在寻找某种方法来轻松管理这个问题 如果我自己设计它 我将有一个列出所有远程存储库的文件 以及一个自动从它们中提取的命令行客户端 这个或
  • Express & Handlebars 的全球属性

    我使用 Handlebars 使用express3 handlebars 作为模板 使用 Passport 在 NodeJS 应用程序中进行身份验证 一切都很好 但我想知道是否有一种方法可以将 Passport 创建的 req user 对
  • 准备卸载,就像 Inno Setup 中的准备安装页面一样

    我需要检查多个 exe 文件是否正在运行 通过安装程序安装 然后提示用户关闭它们 如果它们正在运行 如果没有则取消卸载过程 有没有办法在安装中为卸载程序提供类似 准备 页面之类的内容 或者我该如何实施这样的检查 甚至一个消息框也将是完美的
  • Shapefile 到 TopoJSON 转换问题

    I m trying to convert a shapefile to GeoJSON and then to TopoJSON as described in Let s Make a Map http bost ocks org mi