22 votos

No se puede conseguir que plot() en geopandas produzca un mapa del GeoDataFrame

He instalado todos los módulos necesarios y opcionales para geopandas (a excepción de rtree) como se indica en http://geopandas.org/install.html

Estoy siguiendo los tutoriales de este sitio y también de un par de otros bloggers como https://borealperspectives.wordpress.com/2016/03/07/plotting-polygon-shapefiles-on-a-matplotlib-basemap-with-geopandas-shapely-and-descartes/

Aquí simplemente usan .plot() para producir un mapa. Sin embargo cuando sigo obtengo

>>> world.plot()
<matplotlib.axes._subplots.AxesSubplot object at 0x0BB0F910>

No aparece ninguna ventana con un mapa. Este es el fragmento de código que debería funcionar.

>>> import geopandas as gpd
>>> world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
>>> world.plot()
<matplotlib.axes._subplots.AxesSubplot object at 0x0BB0F910>

Lista de versiones:

  • Python 2.7.13 en Windows 7 Professional
  • geopandas 0.2.1
  • numpy 1.11.3
  • pandas 0.19.2
  • shapely 1.5.17
  • fiona 1.7.1
  • seis 1.10.0
  • pyproj 1.9.5.1
  • geopy 1.11.0
  • psycopg2 2.6.2 (dt dec pq3 ext)
  • matplotlib 1.5.3
  • descartes 1.0.2

¿Alguna sugerencia?

35voto

GreyCat Puntos 146

Los ejemplos proporcionados son para ejecutar los scripts en un entorno de cuadernos Jupyter/IPython.

enter image description here

En un entorno Python normal, es necesario import matplotlib para mostrar la imagen

import geopandas as gpd
import matplotlib.pyplot as plt

world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))
world.plot()

plt.show()

enter image description here

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X