您好:
我有以下几点:
带有每个国家边界的世界的
--已成功将shapefile导入PostGIS数据库
--可以通过Openlayers在浏览器中显示世界地图。
2数据(CSV)文件,其中每个记录都有
a. birth country,b. gender,c. lat and long of the country of birth (which matches the lat & long in the shapefile)我正在尝试找出最好的方法来显示地图,其中每个国家(基于CSV数据)有100人或更多的人,比如红色或绿色……
所以我的问题是:
如果我用CSV数据创建一个单独的表,有没有办法把这个表和shapefile表连接起来做上面的事情?
或
要完成上述操作,是否需要将CSV数据合并到shapefile表中
我使用的是PostGIS、地图服务器和Openlayers
谢谢
克里斯
发布于 2010-11-22 01:48:07
我将从CSV文件导入数据到相同的PostGIS数据库,然后在两个表上创建一个视图,这两个表将具有国家名称和人数(从CSV文件中的数据计算)。
然后我会用SLD从这个视图在Mapserver中创建一个WMS,其中我指定每个国家根据人口数量获得哪种颜色。
发布于 2010-11-19 02:24:53
您可以将共享文件导入到geoserver中,geoserver将提供OpenLayers可以读取的WMS资源。
我不太确定如何集成CSV数据b/c已经有一段时间了。也许你可以让每个国家都有自己的DOM id,然后在使用javascript渲染地图后用不同的背景颜色改变CSS。
发布于 2010-12-01 22:02:48
@chris .dbf文件应该有非地理数据,比如出生国家和性别的数据。
另一个很好的例子是来自美国人口普查局的Shapefile。通常,dbf文件将包含人口普查数据/人口统计数据;但不包含地理数据。
https://stackoverflow.com/questions/4211170
复制相似问题