Representar varias capas
Otra funcionalidad típica de pandas es filtrar un dataframe: tomar un subconjunto de las filas según una condición (que genera una máscara booleana).
En este ejercicio, tomaremos el subconjunto de todos los restaurantes africanos y luego crearemos una figura con varias capas. En este tipo de gráfico, combinamos la visualización de varios GeoDataFrames en una misma figura. Para añadir una capa, podemos usar el parámetro ax del método plot() de un GeoDataFrame para pasarle un objeto de ejes de matplotlib.
Los datos de restaurantes ya están cargados como el GeoDataFrame restaurants. GeoPandas está importado como geopandas y matplotlib.pyplot como plt.
Este ejercicio forma parte del curso
Trabajo con datos geoespaciales en Python
Instrucciones del ejercicio
- Selecciona el subconjunto de todas las filas donde
typesea 'African restaurant'. Llama a este subconjuntoafrican_restaurants. - Haz una representación de todos los restaurantes usando un color gris uniforme. Recuerda pasar un objeto de ejes de matplotlib al método
plot(). - Añade una segunda capa solo con los restaurantes africanos en rojo. Para los colores típicos, puedes usar nombres en inglés como 'red' y 'grey'.
- Quita el recuadro usando el método
set_axis_off()sobre el objeto de ejes de matplotlib.
Ejercicio interactivo práctico
Prueba este ejercicio y completa el código de muestra.
# Load the restaurants dataset
restaurants = geopandas.read_file("paris_restaurants.geosjon")
# Take a subset of the African restaurants
african_restaurants = ____
# Make a multi-layered plot
fig, ax = plt.subplots(figsize=(10, 10))
restaurants.____
african_restaurants.____
# Remove the box, ticks and labels
ax.____
plt.show()