Ich möchte die Welt in Polygone gleicher Bevölkerungsgröße aufteilen, sagen wir 100 Millionen Menschen (beginnend zum Beispiel mit Rasterdaten der Bevölkerungsdichte, wie sie von der NASA bereitgestellt werden). Ich weiß, dass dieses Schneiden in dem Sinne willkürlich wäre, dass es viele verschiedene Lösungen gibt. Aber das spielt keine Rolle, ich brauche es, um willkürlich zu sein! Könnte mir bitte jemand den besten Weg zeigen, um fortzufahren?
polygon
tesselation
Julien
quelle
quelle
Antworten:
Sie könnten ein Raster aus kleinen Quadraten erstellen, die die Welt bedecken. Dann könnte ein Skript jedes benachbarte Quadrat durchlaufen und while (sum (squares.population) <1000000) {merge (squares)}. Für das letzte Quadrat, bei dem Sie über 1 Million springen würden, könnten Sie dasselbe mit viel kleineren Quadraten tun. Sie sollten wie eine Schlange über die Quadrate streifen, nicht in einer Linie, damit die endgültige Polygonform nicht immer dieselbe ist. Sie können eine räumliche Datenbank wie PostGIS verwenden, um die SUMME und die Zusammenführung (ST_UNION) durchzuführen.
Ihre Frage ist sehr interessant. Halten Sie uns über Ihre Ergebnisse auf dem Laufenden.
quelle