你能帮我用python连接到我的postgresql数据库吗?我需要用python创建图形界面,它将可视化我的数据库中的shapefile数据(我在该数据库中有大约50个shapefile格式的多边形)。你能帮我创建这样的应用程序吗?我是python中的傻瓜。
答案 0 :(得分:6)
要与数据库通信,请使用psycopg2。如果您熟悉基本的数据库概念,那么它快速,简单,高效。
您可以从这里获得多个选项。您可以使用shpUtils,这应该是解析shapefile的一个很好的包。然后,您可以使用大量python图形包来显示数据,例如pil。
每个选项都适合不同的需求,具体取决于您定义为“创建图形界面”的内容。如果需要创建简单的图形输出,请使用上面提到的图形实用程序之一从文本构建多边形。如果您需要创建一个看起来很专业的图像,请尝试使用mapnik(在其他一些答案中提到),它可以轻松读取shapefile。如果您需要创建一个功能齐全的GUI,它可能不是初学者的任务 - 您应该在开始使用shapefile和多边形之前先编写基本的GUI应用程序。
但是,如果您只需要查看多边形 - 请跳过python并使用qgis,这将非常容易地显示您的多边形。它还附带了一些其他不错的功能,如颜色,缩放等。
(来源:sourceforge.net)
答案 1 :(得分:0)
我会通过将其分解为更小的问题并解决每个问题来解决这个问题
a)如何使用python连接到postgresql数据库?
https://stackoverflow.com/search?q=postgresql+database+python - 看起来psycopg2是一个很好的选择,正如亚当马坦所建议的那样。
b)在python中绘制shapefile数据
答案 2 :(得分:0)
Mapnik非常适合绘制地图。它也可以处理各种格式和shapefile。据我所知它也支持PostgreSQL(至少是PostGIS)。
最少但不是最后:它带有Python界面(参见Getting started)