0

我需要在基于 d3.js topojson 的 chloropleth 地图中显示 170 个国家/地区县/州级别的订单/收入/销售等数量。允许用户从下拉列表中选择国家,并应显示相应的国家 chloropleth 地图。

我必须为 170 个国家/地区实施类似于此 http://bl.ocks.org/thedod/4548858的方法。我将把这个 html 集成到 java j2ee 项目的 jsf 页面中。

  1. 当用户从下拉列表中选择一个国家/地区时,我是否必须创建 170 个 topojson 文件并按需加载。
  2. 有没有现成的数据库。如果我只是传递一个国家/地区名称/代码,只需返回该国家/地区的 topojson 和 admin2 详细信息。

请给我一个解决方案/更好的做法。我只想要基于开源java 的技术/库。

4

1 回答 1

0
  1. 不可以。您可以将所有内容都放在一个 JSON 文件中,并在开始时加载,然后在用户选择国家/地区时选择相关部分,而不是加载更多数据。然而,这意味着初始等待时间更长,因为需要加载更多数据。D3 对此没有任何限制,因此您可以解决这个问题,但您认为最适合您的应用程序。听起来好像您要加载大量数据,因此按需加载每个国家/地区可能是提高性能的最佳方式。
  2. 据我所知,不是。虽然您应该能够相对轻松地找到所有国家/地区的 GeoJSON 数据,但 TopoJSON 是一种不太常见的格式,因此机会较小。但是,您可以将许多其他格式转换为 TopoJSON。
于 2014-02-01T11:58:32.633 回答