feiteyizu
feiteyizu
采纳率0%
2018-07-22 08:31 阅读 2.6k

GeoServer + PostGIS,污染物浓度分布地图 怎么实现

40

需求: 实现 污染物浓度分布地图 ;

现有资源:1)服务端利用插值算法 生成了 非常多的数据,具体是 1米乘1米 区域是一个 经纬度+浓度数据;
2)前端用的 Openlayer,后端 GeoServer;数据库 PostGIS + postgresql;
我的问题是: 1) 后端的那些 数据(经纬度+浓度值), 咋存储呢? 用 PostGIS 什么数据类型 才能 用 GeoServer 生成地图服务;用点?还是 面,如果是面 1米乘1米 不得 很多经纬度数据;
2)前端 是要 根据时间 去查询 后端的 地图服务的,GeoServer 需要根据时间生成 ,比如 5分钟 一个时间点 生成一个 png地图,怎么实现呢;
3)具体 这个 地图 我也不懂,栅格的 或者,有人说等值面 ? 请给点 指导;

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

2条回答 默认 最新

  • weixin_30661881 Fireworking 2018-07-22 09:57

    数据可以用点文件来存储,也可以直接处理为栅格图层存储,也可以直接用普通表来存储,根据功能来确定需要的存储方式;
    栅格图层可以直接发布成浓度热力图服务,前端用openlayer可以用url加载展示;
    也可以直接将经纬度和浓度以jason返回前端,前端用heatmap来渲染,代价就是传输数据量大,前端渲染压力也大,也存在泄漏数据风险,不建议采用;
    根据时间查询这个功能,要求后端必须实时更新数据,数据一方面用于查询一方面用于展示,查询部分query就可以了,展示部分的话就5分钟发一个地图服务;
    等值面本身也是栅格,只是浓度的一种呈现方式而已。

    点赞 评论 复制链接分享
  • qbkken qbkken 2018-08-13 01:19

    1) 答 :PostGIS地理数据类型现在仅支持最简单的要素,包括点(Point),线(LineString),面(Polygon),多点(MultiPoint),多线(MultiLineString),多面(MultiPolygon)以及混合数据类型(GeometryCollection); 应该是用 把数据转化成 等值面后 Polygon可以满足你的要求;
    2)答:GeoServer 有 api的,自己去 百度查查;
    3)等值面 可以实现,查查 这个wcontour

    点赞 评论 复制链接分享

相关推荐