Note
Click here to download the full example code
Délimitation de tâches bâties¶
Dans ce notebook, nous allons délimiter des zones bâties pour la ville de Caen.
# sphinx_gallery_thumbnail_number = 3
import os
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import geopandas as gpd
Lecture des données¶
On ouvre le fond du bâti de la ville de Caen.
bati = gpd.read_file(os.getenv("URL_BATI_VILLE"))
Délimitation des zones bâties¶
On calcule un buffer de 100 mètres autour de chaque bâtiment.
bati_buffer_positif=bati.copy()
bati_buffer_positif['geometry']=bati_buffer_positif.geometry.buffer(100)
On fusionne les buffers avec une intersection non nulle et on affiche les zones fusionnées.
union_buffer=gpd.GeoDataFrame({'geometry':bati_buffer_positif.unary_union})
ax = union_buffer.plot()
On effectue un buffer négatif pour affiner la délimitation afin de compenser le buffer positif prélablement réaliser pour capter les relations de bâtiments voisins. L’affichage de la carte montre des zones plus délimitées.
union_buffer_negatif=union_buffer.copy()
union_buffer_negatif['geometry']=union_buffer_negatif.buffer(-100)
ax = union_buffer_negatif['geometry'].plot()
On décide d’afficher que les zones de plus de 8 hectares.
union_buffer_negatif['aire']=union_buffer_negatif['geometry'].area/10000
ax = union_buffer_negatif[union_buffer_negatif.aire>8].plot()
Total running time of the script: ( 0 minutes 15.710 seconds)