Plotando múltiplas camadas
Outra funcionalidade típica do pandas é filtrar um dataframe: obter um subconjunto das linhas com base em uma condição (que gera uma máscara booleana).
Neste exercício, vamos pegar o subconjunto de todos os restaurantes africanos e, em seguida, criar um gráfico com várias camadas. Nesse tipo de gráfico, combinamos a visualização de vários GeoDataFrames em uma única figura. Para adicionar uma camada, podemos usar o parâmetro ax do método plot() de um GeoDataFrame para passar um objeto de eixos do matplotlib.
Os dados de restaurantes já estão carregados como o GeoDataFrame restaurants. O GeoPandas foi importado como geopandas e o matplotlib.pyplot como plt.
Este exercício faz parte do curso
Trabalhando com Dados Geoespaciais em Python
Instruções do exercício
- Selecione o subconjunto de todas as linhas em que o
typeé 'African restaurant'. Chame esse subconjunto deafrican_restaurants. - Faça um gráfico de todos os restaurantes e use uma cor cinza uniforme. Lembre-se de passar um objeto de eixos do matplotlib para o método
plot(). - Adicione uma segunda camada apenas com os restaurantes africanos em vermelho. Para as cores típicas, você pode usar nomes em inglês como 'red' e 'grey'.
- Remova a moldura usando o método
set_axis_off()no objeto de eixos do matplotlib.
Exercício interativo prático
Experimente este exercício completando este código de exemplo.
# 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()