【问题标题】:GIS project adviceGIS项目建议
【发布时间】:2010-11-18 02:36:35
【问题描述】:

你好:
我有以下内容:
1. 世界的形状文件与每个国家的边界​​
-- 成功将 shapefile 导入 PostGIS 数据库
-- 可以通过 Openlayers 在浏览器中显示世界地图。

2 每条记录都有一个数据 (CSV) 文件
一种。出生国,
湾。性别,
C。出生国家的经纬度(与 shapefile 中的经纬度匹配)

我正在尝试找出显示地图的最佳方法,其中每个国家(基于 CSV 数据)有 100 人或更多人,颜色为红色或绿色......

所以我的问题是:
如果我用 CSV 数据创建一个单独的表,有没有办法将此表与 shapefile 表链接来执行上述操作?

是否需要将 CSV 数据合并到 shapefile 表中才能完成上述操作

我正在使用 PostGIS、地图服务器和 Openlayers

谢谢
克里斯

【问题讨论】:

标签: gis openlayers postgis mapserver


【解决方案1】:

我会将数据从 CSV 文件导入到同一个 PostGIS 数据库,然后在两个表上创建一个视图,其中包含国家名称和人数(根据 CSV 文件中的数据计算)。

然后,我将使用 SLD 在 Mapserver 中创建一个 WMS,在其中我指定每个国家/地区根据人数获得哪种颜色。

【讨论】:

  • Igorti:我明白你在说什么......这是一组静态数据,所以我可以使用表格而不是视图......我有一个关于形状文件的问题。 .. 我查看了关联的 dbf 文件,但没有看到几何列。那么如何找到每个国家/地区的几何图形?克里斯
  • 一个补充;不要忘记在geometry_columns 表中的VIEW 中添加一个条目:postgis.refractions.net/documentation/manual-1.4/…
【解决方案2】:

您可以将 Sharefile 导入 geoserver,geoserver 将提供 OpenLayers 可以读取的 WMS 资源。

我不太清楚如何集成 CSV 数据 b/c 已经有一段时间了。也许您可以让每个国家/地区拥有自己的 DOM id,并在使用 javascript 渲染地图后使用不同的背景颜色更改 CSS。

【讨论】:

  • 感谢您的建议...但我在此项目中使用 mapserver...根据另一个建议,我将 CSV 文件作为表格导入并通过 SELECT 获得我想要的从两个表中获取数据的语句... Chris
【解决方案3】:

@chris .dbf 文件应该包含非地理数据,例如有关出生国家和性别的数据。

另一个很好的例子是来自美国人口普查局的 Shapefile。通常,dbf 文件将包含人口普查数据/人口统计数据;但不是地理数据。

【讨论】:

    猜你喜欢
    • 2023-03-25
    • 1970-01-01
    • 2014-05-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-28
    相关资源
    最近更新 更多