2016-04-20 4 views
3

J'ai récemment commencé à utiliser Geopandas en python pour certains de mes travaux spatiaux et j'en suis très satisfait - j'essaie actuellement de lire les fonctionnalités de PostGIS et je ne comprends pas très bien comment paramétrer la connexion à la base de données, il ne semble pas clair dans la documentation:Geopandas PostGIS connection

GeoDataFrame.from_postgis(sql, con, geom_col='geom', crs=None, index_col=None, 
    coerce_float=True, params=None) 

Ceci est probablement une question très simple, tout ce que je voulais savoir est ce qui doit aller dans « con » - je suppose une chaîne avec des informations de connexion de base de données? Mais dans quel format? Définir 'sql' semble simple. Toute aide grandement appréciée - merci!

+0

Vous pouvez regarder dans les Pandas 'read_sql' docs, qui est utilisé par geopandas: http://pandas.pydata.org/pandas-docs/stable/io.html#sql -queries – joris

+0

Merci - juste ce que je cherchais! – mweber

Répondre

8

Exemple:

import geopandas as gpd 

import psycopg2 # (if it is postgres/postgis) 

con = psycopg2.connect(database="your database", user="user", password="password", 
    host="your host") 

sql = "select geom, x,y,z from your_table" 

df = gpd.GeoDataFrame.from_postgis(sql, con, geom_col='geom') 
+0

Est-il possible de lire à partir de mysql de manière similaire? –