Ich möchte den Mittelpunkt aller Länder der Erde finden.
Was ich bisher versucht habe, ist das Herunterladen von Shapefiles aller Länder und polaren Teile der Erde. Dann habe ich dieses Shapefile in eine SQL Server 2008-Datenbank importiert und dann versucht, einige Abfragen auszuführen, um diesen Punkt zu finden, aber alle waren vergebens.
Wie kann ich mit SQL Server den Schwerpunkt aller Länder der Erde berechnen ?
centroids
sql-server-spatial
Schwammgenosse
quelle
quelle
Antworten:
Dies ist möglicherweise am einfachsten mit Rasterberechnungen möglich, da der Schwerpunkt der Landoberfläche (per Definition) durch Mitteln der geozentrischen Koordinaten (X, Y, Z) und Gewichtung nach Landfläche ermittelt wird. Die Mittelwertbildung erfolgt mithilfe von Zonenstatistiken .
Um diese Koordinaten und den Flächenskalierungsfaktor zu erhalten, berechnen Sie die folgenden Gitter in geografischen Koordinaten, die alle Landgebiete mit einer beliebigen Auflösung abdecken (ich habe 0,1-Grad-Zellen verwendet, die ein 3600 x 1800-Gitter bilden, das die gesamte Erde abdeckt):
[Längengrad] ist die erste Koordinate.
[Latitude] ist die zweite Koordinate.
[X] ist Cos ([Länge]) * Cos ([Breite]).
[Y] ist Sin ([Longitude]) * Cos ([Latitude]).
[Z] ist Sünde ([Latitude]).
[F] ist Cos ([Latitude]). Dies ist der Flächenskalierungsfaktor.
(Beachten Sie, dass es nicht erforderlich ist, [X], [Y] oder [Z] mit dem Erdradius zu multiplizieren. Tatsächlich berechnen wir den Schwerpunkt eines perfekt skalierten sphärischen Erdmodells. Die Position dieses Schwerpunkts auf Das Modell ist die skalierte Position des gewünschten Schwerpunkts.)
Berechnen Sie die zonalen Mittelwerte von [X] * [F], [Y] * [F] und [Z] * [F]. Als ich dies mit einem Shapefile tat, das alle wichtigen Landgebiete (einschließlich der Antarktis) mit einer Länge von 0 bis 360 Grad zeigte, betrugen die zonalen Mittelwerte -0,1204, -0,0661 bzw. 0,1356.
(Alternativ können Sie [X], [Y] und [Z] in jede flächengleiche Projektion projizieren und ihre zonalen Mittelwerte direkt berechnen, ohne auf die Flächengewichtung mit [F] zurückgreifen zu müssen. Tun Sie, was in Ihrem GIS einfacher ist.)
Wie zu erwarten ist, liegt dieser Schwerpunkt bei (0, 0, 0) viel näher am Erdmittelpunkt als an seiner Oberfläche. Wenn wir es abbilden möchten, können wir seinen Breiten- und Längengrad berechnen und seine Tiefe ignorieren. Die Länge eines Punktes (X, Y, Z) wird allein durch (X, Y) bestimmt und normalerweise als ihr Arkustangens berechnet; Der Breitengrad wird durch Sqrt (X ^ 2 + Y ^ 2) und Z bestimmt und normalerweise als ihr Arkustangens berechnet. Ich erhalte den Ort (208,77, 44,63) (das sind 28,77 Grad östlicher Länge, 44,63 Grad nördlicher Breite). Dies liegt in der Nähe der Ostküste Rumäniens.
Diese Karte ist in geografischen Koordinaten angegeben: Die horizontale Koordinate ist der Längengrad und die vertikale Koordinate ist der Breitengrad. Der Hintergrund zeigt das X-Koordinatengitter. Der Schwerpunkt befindet sich unter der roten Markierung in der Mitte rechts.
Wenn das für Sie nicht ganz wie das Zentrum der Landmassen aussieht, überprüfen Sie es von einem anderen Ort aus, z. B. direkt über dem Kopf:
Die unsichtbaren Teile der Vereinigten Staaten, Mittel- und Südamerikas werden die sichtbaren Landmassen mehr als ausgleichen. Die Antarktis und Australien stellen das Gleichgewicht wieder her. Dieses Ergebnis erscheint mir plausibel. Ihre Ergebnisse können je nach Maßstab und Genauigkeit Ihrer Landmassendaten, der Auflösung Ihres Gitters und der Verwendung eines sphärischen oder ellipsoiden Erdmodells geringfügig variieren. (Der Flächenfaktor [F] erfordert eine aufwändigere Berechnung in einem Ellipsoidmodell.)
Der Vorteil einer gitterbasierten Lösung wird in Verallgemeinerungen dieser Frage deutlich. Wenn Sie beispielsweise [F] (das Raster "Landbetrag") durch ein Raster ersetzen, das die Gesamtmenge von etwas anderem pro Zelle darstellt, können Sie gewichtete Zentroide berechnen. Wenn Sie ein Bevölkerungsdichteraster [P] haben, ist [F] * [P] proportional zur Gesamtbevölkerung. Die Verwendung von [F] * [P] anstelle von [F] in diesen Berechnungen würde einen Schwerpunkt der Weltbevölkerung ergeben.
quelle