¿Lista de coordenadas centrales (centroide) para todos los países?


17

Necesito una lista de los puntos centrales (centroide) para todos los países:

China: lat / long (coordenadas del punto más central de China)
Francia: lat / long (coordenadas del punto más central de Francia),
etc.

Respuestas:


18

Frank Donnelly proporciona un archivo CSV de centroides de país que se basa en datos tomados del Servidor GeoNames, pero que fue curado a mano por Frank. Los datos se actualizaron por última vez en febrero de 2012.


Mayo 2018

La fuente anterior ya no está disponible, aquí hay una nueva, con mucha información sobre los países (incluidos los Centroides) y la posibilidad de descargar los datos en varios formatos. https://worldmap.harvard.edu/data/geonode:country_centroids_az8

También hay una pregunta similar en Stackoverflow: se necesita una lista de todos los países del mundo, con una coordenada de longitud y latitud , que incluye un par de enfoques para generar dicha lista a partir de otras fuentes de datos.


el csv vinculado parece 404 ahora, ¿alguien tiene otra fuente?
Vincent V.

Encontré otra fuente que se ve bien y completa: worldmap.harvard.edu/data/geonode:country_centroids_az8 puede dl cualquier formato que necesite, incluido csv, también tiene muchos otros datos sobre países
Vincent V.

1
La primera y última url son 404.
Aaron

7

Puede recuperar esta información de Resta manera:

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)

resultado


3

Puede obtener los centroides del país utilizando Python y GeoPandas .

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 ...

ingrese la descripción de la imagen aquí


Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.