Ajout de polygone

Folium, bibliothèque Python basée sur Leaflet.js, permet de créer des cartes interactives puissantes et personnalisables. L’une de ses fonctionnalités essentielles est la possibilité d’ajouter des polygones afin de représenter des zones géographiques définies par plusieurs points de coordonnées.

Les polygones sont particulièrement utiles pour visualiser des régions, des quartiers, des parcelles ou des zones délimitées dans un espace géographique. Avec Folium, il est possible de personnaliser l’apparence des polygones (couleur, opacité, bordures) et d’y associer des infobulles ou des popups pour enrichir l’interactivité de la carte.

Cette fonctionnalité est couramment utilisée dans les analyses spatiales, la planification urbaine, la gestion territoriale, ou la visualisation de données environnementales, afin de mieux comprendre la structure géographique d’un phénomène ou d’un espace.

Fonctions :

  • folium.Polygon()

    La fonction folium.Polygon() permet de dessiner un polygone sur une carte interactive. Un polygone est une figure géométrique fermée délimitée par une série de points connectés, souvent utilisée pour délimiter des zones géographiques.

    Importation :

    import folium

    Attributs :

    Paramètre Type Description Valeur par défaut
    locations list Liste de tuples ou de listes représentant les coordonnées GPS des points formant le polygone (par exemple, [(lat1, lon1), (lat2, lon2), ...]). None
    color str Couleur de la bordure du polygone (par exemple, 'blue', 'red'). 'blue'
    weight int Épaisseur de la bordure en pixels. 3
    fill_color str Couleur de remplissage du polygone. 'blue'
    fill_opacity float Opacité de la couleur de remplissage (valeur entre 0 et 1). 0.2
    popup str ou folium.Popup Texte ou objet `Popup` à afficher lorsque l'utilisateur clique sur le polygone. None

    Exemple de code :

    import folium
    
    # Coordonnées GPS de plusieurs points formant un polygone
    locations = [
        [48.8566, 2.3522],  # Paris
        [51.5074, -0.1278],  # Londres
        [52.5200, 13.4050],  # Berlin
        [48.8566, 2.3522],  # Retour à Paris pour fermer le polygone
    ]
    
    # Création de la carte centrée sur Paris
    m = folium.Map(location=[48.8566, 2.3522], zoom_start=5)
    
    # Création du polygone reliant les points
    polygon = folium.Polygon(
        locations,
        color='green',
        weight=3,
        fill_color='yellow',
        fill_opacity=0.4,
        popup='Zone de Paris, Londres et Berlin'
    ).add_to(m)
    
    # Affichage de la carte
    m
    Résultat du code

    Explication du code :

    1. Coordonnées GPS : La variable locations contient les points géographiques qui forment le polygone. Le dernier point doit être identique au premier pour fermer la forme.

    2. Création de la carte : La carte est centrée sur Paris, avec un zoom de niveau 5.

    3. Création du polygone : La fonction folium.Polygon() est utilisée pour dessiner un polygone en connectant les points définis dans locations.

      • color définit la couleur de la bordure du polygone (ici, vert).

      • fill_color définit la couleur de remplissage du polygone (ici, jaune).

      • fill_opacity contrôle l'opacité du remplissage (ici, 0.4).

    4. Popup : Lorsque l'utilisateur clique sur le polygone, un popup apparaît avec le texte "Zone de Paris, Londres et Berlin".

    5. Affichage de la carte : La carte interactive est affichée avec le polygone dessiné dessus.

    Remarque importante :

    • Comme pour la fonction PolyLine, les coordonnées doivent être fournies sous forme de liste de tuples ou de listes représentant chaque point du polygone.

    • Le polygone peut avoir un remplissage transparent ou coloré selon les besoins en ajustant le paramètre fill_opacity.