dat <- read.table(text=" 'Country_of_Asylum' 'ISO_3' 'Refugees_1000_inhabitants' Lat Long
Lebanon LBN 208.91 33.8333 35.8333
Jordan JOR 89.55 31.0000 36.0000
Nauru NRU 50.60 -0.5333 166.9167
Chad TCD 30.97 15.0000 19.0000
Turkey TUR 23.72 39.0000 35.0000
'South Sudan' SSD 22.32 4.8500 31.6000
Mauritania MRT 19.36 20.0000 -12.0000
Djibouti DJI 16.88 11.5000 43.0000 Sweden SWE 14.66 62.0000 15.0000 Malta MLT 14.58 35.9000 14.4000", header=TRUE)
data.frame(top_ten_pcapita)
library(ggplot2)
library(maps)
mdat <- map_data('world')
str(mdat)
ggplot() +
geom_polygon(dat=mdat, aes(long, lat, group=group), fill="grey50") +
geom_point(data=top_ten_pcapita,
aes(x=Lat, y=Long, map_id=ISO_3, size=`Refugees_1000_inhabitants`), col="red")
我试图在ggplot上制作一张地图,但是经度和纬度完全没了。我不完全确定发生了什么。例如,为什么是lat。在地图上超过100?
答案 0 :(得分:1)
你混淆了经度和纬度。如果您为积分添加标签,则会发现没有一个国家/地区位于正确的位置。
因此,请确保x =经度和y =纬度并且它能够正常工作:
ggplot() +
geom_polygon(dat = mdat, aes(long, lat, group = group), fill = "grey50") +
geom_point(data = top_ten_pcapita,
aes(x = long, y = lat, size = Refugees_1000_inhabitants), col = "red")
答案 1 :(得分:0)
您切换了x和y轴。 x应该是经度,y应该是纬度。此外,我不认为瑙鲁应该有负经度。
试试这个:
ggplot() +
geom_polygon(dat=mdat, aes(long, lat, group=group), fill="grey50") +
geom_point(data=top_ten_pcapita,
aes(x=Long, y=Lat, size=`Refugees_1000_inhabitants`), col="red")