Ich bin ein Neuling, entschuldige mich, wenn dies offensichtlich ist / wurde bereits gefragt und beantwortet, aber ich konnte nichts finden.
Ich habe zwei Shapefiles: 1. Eine administrative Grenzschicht für eine Grafschaft in Großbritannien, bekannt als LSOA-Grenze, die 500 kleine Zonen enthält. 2. Eine Flutzone .
Idealerweise möchte ich herausfinden, welche der kleinen LSOA-Zonen ≥ 50% innerhalb der Flutzone liegen, und am Ende für jede der 500 LSOA-Zonen ein Ja / Nein oder 1/0 erhalten.
Aber ich weiß nicht, wie ich das machen soll. Ich dachte, ich könnte die beiden Shapefiles verbinden, aber es gibt kein gemeinsames Attribut zwischen ihnen. Dann dachte ich, ich könnte die Funktion Attribut nach Ort verbinden verwenden, die funktioniert und mir zeigt, welche LSOA sich in der Flutzone befinden, aber das sind fast alle (siehe Abbildung 2).
Ich denke, das ist ein SQL-Problem, aber ich weiß es nicht. Ich bin neu in QGIS und habe noch nie PostgreSQL verwendet.
Jede Hilfe wäre sehr dankbar. Ich kann Ihnen alle Informationen geben, die Sie als nette Leute brauchen, um mir zu helfen.
quelle
Vector > Research Tools > Vector Grid... Output grid as polygons
) und schneiden Sie das Raster mit der Flutebene. Verwenden Sie dann in Schritt 3 die Ausgabe anstelle des Flood-Layers. Ich vermute, der Grund, warum der Layer leer war, liegt daran, dass er abgestürzt ist.Sie können Spatialite und einige räumliche SQL-Funktionen verwenden.
quelle
Dies scheint etwas zu sein, das viel einfacher gemacht werden könnte als die eingereichten Antworten. Ich würde persönlich ein einfaches Python-Skript verwenden:
Hiermit werden nur Flutpolygone ausgewertet, die sich mit dem Begrenzungsrahmen jeder Begrenzungsebene überschneiden, sodass die Ausführung relativ schnell erfolgen sollte. Anschließend wird nur ein Feld in der vorhandenen Ebene aktualisiert (anstatt eines komplexen Vorgangs, bei dem eine neue Ebene erstellt und alte Werte kopiert werden dann löschen)
quelle
Ich hatte das gleiche Problem wie KJ, als ich den Anweisungen von Snorfalorpagus unter Verwendung der "Intersect" -Methode in Schritt 3 gefolgt war. Die Berechnung dauerte eine ganze Weile, und ich hatte nichts mehr übrig.
Ich habe versucht, die gleichen Schritte zu befolgen, außer die "Clip" -Methode in QGIS anstelle von "Intersect" zu verwenden. In Ihrem Beispiel würden also die Teile der Bereiche übrig bleiben, die NICHT von der Flutzone abgedeckt werden. Dies schien aus irgendeinem Grund zu funktionieren, und ich konnte die Feldberechnung "Fläche" aus dem vorherigen Schritt sowie eine neue Berechnung "Fläche" für die verbleibenden Teile jedes Polygons verwenden, um den Prozentsatz jeder Fläche zu ermitteln, der NICHT war von der anderen Polygon-Ebene abgedeckt.
Das ist technisch gesehen das Gegenteil von dem, wonach Sie gefragt haben. Aber von dort aus ist es nur eine Frage der jeden Wert von 1 subtrahiert zu bekommen , was wird von der Flut Zone bedeckt.
quelle