当前位置: 首页 > 知识库问答 >
问题:

客户端拓扑呈现似乎不正确的路径

贺刚毅
2023-03-14

我一直试图创建一个TopoJson文件,其中包含美国各州、县和国会选区等层的合并层数据。

起初的shp形状文件来自人口普查局的地图边界文件。

它们通过ogr2ogr转换为GeoJson。

然后通过节点服务器端库合并成TopoJson格式,量化为1e7,保留比例为0.15。到目前为止,没有任何迹象表明存在任何问题。

可在此处找到该页面的工作版本:http://jsl6906.net/D3/topojson_problem/map/

一些相关的注意事项:

  • 如果我更改topojson生成脚本以删除简化,则路径似乎通过相同的d3.js页面正确显示
  • 如果我在创建topojson时只保留国会Dist层,那么路径似乎通过相同的d3.js页面正确显示:

在尝试了尽可能多的故障排除后,我想我会请这里的人看看是否有人遇到过类似的问题。谢谢你的帮助。

共有1个答案

淳于飞鸾
2023-03-14

正如我在评论中提到的,我注意到三个违规的矩形都绑定到以ZZ结尾的id属性的数据,而所有其他路径的ID都以数字结尾。

在谷歌搜索之后,我找到了我认为是答案的东西。

根据census.gov网站上的这份文件,

在康涅狄格州、伊利诺伊州和密歇根州,该州参与者没有指定当前(第113个)国会选区覆盖全州或同等地区。代码“ZZ”已分配给未定义国会选区的区域(通常为大型水体)。为了数据展示的目的,这些未分配区域在州内被视为单个国会选区。

这三个未定义的区域似乎可以解释这三个矩形。目前还不清楚在这个过程中,他们在什么时候导致了这个问题,但我相信有一个简单的解决办法来解决你眼前的问题。在搜索有关ZZ代码的信息时,我在mbostock的一个名为usatlas的项目中偶然发现了这个makefile。

他似乎遇到了类似的问题,并在运行ogr2ogr时设法过滤掉了未定义的国会选区。以下是该文件中的相关代码:

# remove undefined congressional districts
shp/us/congress-ungrouped.shp: shp/us/congress-unfiltered.shp
    rm -f $@
    ogr2ogr -f 'ESRI Shapefile' -where "GEOID NOT LIKE '%ZZ'" $@ $<

我敢打赌,如果使用此处显示的标志在shapefile上运行ogr2ogr,它将解决问题。

 类似资料:
  • 我目前正在使用materialize CSS,似乎我已经遇到了选择字段。 我使用的是他们站点提供的示例,但不幸的是,它呈现在视图中。我想知道是否有其他人能帮上忙。 我要做的是创建一个有两个结尾间隔提供填充的行-然后在内部的两个行项中应该有一个搜索文本输入和一个搜索选择下拉列表。 这是我正在使用的示例:http://materializecss.com/forms.html 提前谢谢你。 下面是所讨

  • 我正在使用react、Redux和react Router开发一个react web应用程序,带有服务器端呈现(使用express) 我面临的问题有点难以解释。我将试着在下面的步骤中进行解释。 > 您首先从http://www.example.com/articles/1234这样的URL进入应用程序。express服务器将发送正确的内容,其中包括正确的页面源和DOM(来自chrome Eleme

  • 问题内容: 我创建了一个新的Rails项目,调用 然后当我在目录中运行 我收到关注错误 我见过其他人遇到此错误,但他们通常是linux用户,并且我正在运行Windows。我试图重新安装Rails(railsinstaller.org)和mysql 5.5。我既使用了32位版本,也使用了64位版本 问题答案: 这里似乎已经有几个问题。您尝试过他们的解决方案吗? 相关部分在这里:

  • 当我将输入类型属性设置为数字(Android:输入类型=“数字”)并设置数字属性时,就像这个Android:数字=“0123456789”。输入事件按预期正常工作。即仅以数字形式接收输入。参考屏幕截图 当我将inputType属性设置为text person name(Android:input type = " text person name ")并像这样设置digits属性android:d

  • 下面是我们在生产中遇到的问题的描述。请注意,我无法在测试或本地环境中再现该问题,因此无法向您提供测试代码。 我们有一个hazelcast集群,有两个成员M1、M2和三个客户端C1、C2、C3。Hazelcast版本为3.9。 客户端使用IMap。tryLock()方法,超时10秒。获得锁后,将执行关键和长时间运行的操作,最后使用IMap释放锁。unlock()方法。 生产中出现的问题如下: 在某个

  • 我正在运行一个3节点的Storm集群。我们正在提交一个包含10个工作者的拓扑结构,以下是拓扑结构的详细信息 我们每天处理800万到1000万个数据。问题是topolgy只运行了2到3天,而我们在kafka spout中看到了一些失败的元组,没有处理任何消息。当提交新的topolgy时,它工作良好,但在2到3天后,我们又看到了同样的问题。有人能给我们一个解决方案吗。下面是我的storm配置