ฉันต้องการรายการของจุดศูนย์กลาง (centroid) สำหรับทุกประเทศ:
จีน: ละติจูด / ลองจิจูด (พิกัดของจุดที่สำคัญที่สุดในจีน)
ฝรั่งเศส: ละติจูด / ลองจิจูด (พิกัดของจุดที่สำคัญที่สุดในฝรั่งเศส)
ฯลฯ ...
ฉันต้องการรายการของจุดศูนย์กลาง (centroid) สำหรับทุกประเทศ:
จีน: ละติจูด / ลองจิจูด (พิกัดของจุดที่สำคัญที่สุดในจีน)
ฝรั่งเศส: ละติจูด / ลองจิจูด (พิกัดของจุดที่สำคัญที่สุดในฝรั่งเศส)
ฯลฯ ...
คำตอบ:
Frank Donnelly ให้ไฟล์ CSV ของ centroids ของประเทศซึ่งอ้างอิงจากข้อมูลที่นำมาจากเซิร์ฟเวอร์ GeoNames แต่เป็นไฟล์ที่จัดทำโดย Frank ข้อมูลได้รับการปรับปรุงล่าสุดในเดือนกุมภาพันธ์ 2555
พฤษภาคม 2018
แหล่งข้อมูลเดิมไม่สามารถใช้งานได้อีกต่อไปนี่คือใหม่กว่าด้วย infos จำนวนมากในประเทศ (รวมถึง Centroids) และความเป็นไปได้ในการดาวน์โหลดข้อมูลในหลายรูปแบบ https://worldmap.harvard.edu/data/geonode:country_centroids_az8
นอกจากนี้ยังมีคำถามที่คล้ายกันที่ Stackoverflow: ต้องการรายชื่อของทุกประเทศในโลกด้วยพิกัดลองจิจูดและละติจูดซึ่งรวมถึงสองสามวิธีในการสร้างรายการดังกล่าวจากแหล่งข้อมูลอื่น
คุณสามารถดึงข้อมูลนี้โดยใช้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)
คุณจะได้รับ centroids ประเทศใช้งูหลามและ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 ...
ลิงก์ส่วนใหญ่ที่กล่าวถึงข้างต้นเสียชีวิต แต่ฉันพบนี้ไฟล์ CSV ที่มีศูนย์ทางภูมิศาสตร์ของประเทศในพิกัด