Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Overlejringsoperationer | Rumlige Analyseteknikker
Geospatiel Analyse med Python
Sektion 2. Kapitel 2
single

single

Overlejringsoperationer

Stryg for at vise menuen

Overlay-operationer er en grundlæggende del af geospatiel analyse, der gør det muligt at sammenligne, kombinere og udtrække relationer mellem forskellige spatiale datasæt. Disse operationer er særligt nyttige, når der skal besvares spørgsmål som "Hvor overlapper to objekter?", "Hvad er det samlede areal af to regioner?" eller "Hvilke dele af én region er ikke dækket af en anden?" De tre mest almindelige overlay-operationer er intersection, union og difference, som hver især har et unikt analytisk formål.

Intersection-operationen bruges til at finde det spatiale område, hvor to datasæt overlapper. Dette er afgørende, når der skal identificeres fælles områder, såsom regioner hvor miljøbeskyttelseszoner overlapper med foreslåede udviklingsområder. Union-operationen kombinerer derimod alle geometrier fra begge datasæt og samler deres spatiale udstrækning og attributter. Dette er nyttigt til at oprette et datasæt, der repræsenterer alle områder dækket af et af de oprindelige datasæt. Difference-operationen gør det muligt at trække arealet af det ene datasæt fra det andet, hvilket viser hvilke områder der forbliver eksklusive for det første datasæt. Dette bruges ofte, når visse regioner skal udelukkes fra analysen, for eksempel ved at fjerne vandområder fra et arealanvendelseskort.

Overlay-operationer udføres typisk ved hjælp af overlay()-metoden i geopandas, som forenkler disse komplekse spatiale manipulationer og sikrer, at attributdata håndteres korrekt under processen.

123456789101112131415
import geopandas as gpd # Create two simple GeoDataFrames with polygons poly1 = gpd.GeoDataFrame({'id': [1]}, geometry=gpd.GeoSeries.from_wkt(['POLYGON((0 0, 2 0, 2 2, 0 2, 0 0))'])) poly2 = gpd.GeoDataFrame({'id': [2]}, geometry=gpd.GeoSeries.from_wkt(['POLYGON((1 1, 3 1, 3 3, 1 3, 1 1))'])) # Intersection: find overlapping area intersection = gpd.overlay(poly1, poly2, how='intersection') print("Intersection result:") print(intersection) # Union: combine all areas union = gpd.overlay(poly1, poly2, how='union') print("\nUnion result:") print(union)
Opgave

Swipe to start coding

Udfør en overlay-operation på to rumlige datasæt ved hjælp af geopandas.

  • Accepter to GeoDataFrames og en streng, der angiver overlay-operationen ("intersection", "union" eller "difference") som parametre.
  • Brug geopandas til at udføre den angivne overlay-operation mellem de to GeoDataFrames.
  • Returnér den resulterende GeoDataFrame.

Løsning

Switch to desktopSkift til skrivebord for at øve i den virkelige verdenFortsæt der, hvor du er, med en af nedenstående muligheder
Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 2. Kapitel 2
single

single

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

some-alt