Liste der Zentralkoordinaten (Zentroid) für alle Länder?


17

Ich benötige eine Liste der zentralen Punkte (Schwerpunkt) für alle Länder:

China: Lat / Long (Koordinaten des zentralsten Punktes in China)
Frankreich: Lat / Long (Koordinaten des zentralsten Punktes in Frankreich)
etc ...

Antworten:


18

Frank Donnelly stellt eine CSV-Datei mit Länderschwerpunkten zur Verfügung , die auf Daten basiert, die vom GeoNames-Server stammen, aber von Frank von Hand kuratiert wurden. Die Daten wurden zuletzt im Februar 2012 aktualisiert.


Mai 2018

Die frühere Quelle ist nicht mehr verfügbar, hier ist eine neuere mit vielen Informationen zu den Ländern (inkl. Centroids) und der Möglichkeit, die Daten in verschiedenen Formaten herunterzuladen. https://worldmap.harvard.edu/data/geonode:country_centroids_az8

Bei Stackoverflow gibt es auch eine ähnliche Frage: Benötigen Sie eine Liste aller Länder der Welt mit Längen- und Breitengradkoordinaten , die einige Ansätze zum Generieren einer solchen Liste aus anderen Datenquellen enthält.


die verlinkte csv scheint jetzt 404 zu sein, hat jemand eine andere quelle?
Vincent V.

Eine andere Quelle gefunden, die gut und vollständig aussieht: worldmap.harvard.edu/data/geonode:country_centroids_az8 kann jedes benötigte Format, einschließlich csv, verwenden, hat auch viele andere Daten zu Ländern
Vincent V.

1
Die erste und letzte URL sind 404.
Aaron

7

Sie können diese Informationen folgendermaßen abrufen R:

library(rgeos)
library(rworldmap)

# get world map
wmap <- getMap(resolution="high")

# get centroids
centroids <- gCentroid(wmap, byid=TRUE)

# get a data.frame with centroids
df <- as.data.frame(centroids)
head(df)

#>                     x         y
#> Aruba       -69.97345  12.51678
#> Afghanistan  66.00845  33.83627
#> Angola       17.53646 -12.29118
#> Anguilla    -63.06082  18.22560
#> Albania      20.05399  41.14258
#> Aland        20.03715  60.20733

# plot
plot(centroids)

Ergebnis


3

Mit Python und GeoPandas können Sie Länderschwerpunkte abrufen .

import geopandas as gpd
import pandas as pd

# Access built-in Natural Earth data via GeoPandas
world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres'))

# Get a list (dataframe) of country centroids
centroids = world.centroid
centroid_list = pd.concat([world.name, centroids], axis=1)

# Plot the results
base = world.plot(column = 'name', cmap = 'Blues')
centroids.plot(ax = base, marker = 'o', color = 'red', markersize = 5)

In [1]: centroid_list
Out[1]: 
                           name                                              0
    0               Afghanistan  POINT (66.08669022192834 33.85639928169076)
    1                    Angola  POINT (17.47057255231345 -12.24586903613316)
    2                   Albania  POINT (20.03242643144321 41.14135330604877)
    3      United Arab Emirates  POINT (54.20671476159633 23.86863365334761)
    4                 Argentina  POINT (-65.17536077114174 -35.44682148949509)
    5                   Armenia  POINT (45.00029001101479 40.21660761230144)
    6                Antarctica  POINT (20.57100056984261 -80.49198288284349)
    ... and so on ...

Bildbeschreibung hier eingeben


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.