Raggruppa le funzioni poligonali per abbinare un insieme di specifiche


13

Ho due diversi insiemi di funzioni poligonali (398 tratti censuari e 80 codici postali) ciascuno dei quali passa a una funzione più grande (una contea degli Stati Uniti). Sebbene i tratti del censimento siano più piccoli dei codici postali, non arrotolano (cioè annidano) i codici postali.

La mia domanda: esiste un metodo / uno strumento che utilizza ArcGIS o QGIS (o qualsiasi altro software) per raggruppare separatamente i 398 tratti del censimento e gli 80 codici postali per formare 10 funzioni poligonali minimizzando la differenza tra due serie risultanti di 10 funzioni poligonali?

Per chiarire, voglio raggruppare i 398 tratti -> 10 funzioni, quindi raggruppare separatamente gli 80 codici postali -> 10 funzioni, in modo da avere due serie disparate di 10 funzioni ciascuna. Voglio ottimizzare questo raggruppamento in modo da massimizzare la sovrapposizione tra questi due set (cioè minimizzare la mancata corrispondenza).

Ecco un'immagine che mostra ciò che spero di ottenere:


Esiste comunque un esempio (immagine, disegno, ecc.) Di come dovrebbe apparire l'output finale. Ho solo problemi a visualizzarlo.
landocalrissian,

Vuoi anche alcuni criteri come "i poligoni dovrebbero avere all'incirca le stesse dimensioni"? Posso immaginare un modo economico per farlo sarebbe quello di trovare i 9 codici postali più piccoli che corrispondono all'incirca ai tratti del censimento e chiamare il resto grande il decimo poligono.
floema

Grazie floema per il tuo commento. Vorrei davvero stabilire vari criteri, ma non volevo complicare le domande. Ad esempio, sarebbe bello impostare un criterio per una popolazione minima in ciascuno dei 10 poligoni. Ciò che mi piacerebbe è uno strumento / metodo che potrebbe generare un elenco di possibili soluzioni per raggruppare CT e ZIP in questi 10 gruppi, pur soddisfacendo determinati parametri. Quindi potrei rivedere manualmente le soluzioni per caratteristiche che potrebbero non essere automatizzabili (ad es. Non attraversare i confini della città).
Eli Kern,

Quello che ho capito, hai bisogno di due livelli (ZIP e Tract) identici. Di 'che vuoi che la forma di Tracts dovrebbe essere come ZIP, quindi sbarazzati della geometria di Tracts e rendi un layer identico a ZIP e trasferisci l'attributo di Tracts in questo layer Tracts appena creato, quindi il livello ZIP e Tracts apparirà uguale. Per fare questo Converti livello Tratti in Livello punto ed esegui analisi di Aggiornamento o Identità (suggerisco poiché non è distruttiva). Potrebbe essere necessario dissolverne anche secondo le tue necessità. Ora abbiamo il livello ZIP e Tracts con la stessa geometria .. ma attributo diverso (cioè di Tracts) ..
SIslam

Non conosco alcun modo semplice (ad esempio uno strumento esistente) per questo compito. E dubito che crearne uno sarebbe più veloce della gestione manuale di un input di queste dimensioni.
Jan Šimbera,

Risposte:


1

Dal momento che non esiste un modo chiaro o uniforme per definire i poligoni risultanti, penso che sia necessario crearli prima di quanto ritenga opportuno, utilizzando dissolve su qualsiasi attributo (esistente o derivato) sul livello di censimento o codici postali.

Una volta ottenuti i poligoni risultanti, sovrapponi (intersechi) ciascuno dei livelli con esso, esegui un altro dissolvimento e calcola le tue statistiche su altri attributi.


0

Se hai le informazioni dei codici postali e della gerarchia superiore nel tuo database, puoi farlo combinando tutti i valori delle colonne e ottenere un nuovo shapefile.


0

Mi sembra che tu voglia raggruppare le tratte del censimento in 10 cluster, con il vincolo che le tratte in ciascun cluster siano adiacenti. In questo caso, è possibile utilizzare la libreria python clusterPy che implementa diversi algoritmi diversi per il clustering spazialmente limitato.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.