2017-08-03 125 views
0

我有一個數據幀包含名爲ID變量,經度(LON),緯度(LAT),你可以download情節經緯度點?

gg <- ggplot() 
gg <- gg + geom_map(data=skorea, map=skorea, 
        aes(x=long, y=lat, map_id=id, group=group), 
        fill=NA, color="black") 
gg <- gg + geom_point(data=st, aes(x=LON, y=LAT, color=color), 
         alpha=1, na.rm=TRUE) 
gg <- gg + scale_size(range=c(2,7)) 
gg <- gg + scale_color_identity() 
gg <- gg + labs(title= "coordinate data of id", 
       x="Longitude", y= "Latitude") 
gg <- gg + coord_map() 
gg <- gg + theme_map() 
gg <- gg + theme(title= element_text(hjust = 0.5, vjust=1, face="bold")) 
gg 

我想以這樣的方式,在usertxt1我要繪製Loss_ratio地圖:我一直在使用GGPLOT2包同一張地圖上用下面的代碼繪製一些經度緯度的國家地圖用不同的顏色不同的ID對3級1級,級別2,級別3我想繪製3個地圖對於每個這些水平的usertxt1.In每個映射它應包含在顏色的色光對應的丟失率與變化等最高值應該是最暗的和最小的值應爲最輕。

+0

看看[此帖](https://stackoverflow.com/a/20475268/709777),也許它可以幫助 – pacomet

+0

@pacomet感謝分享此代碼,但它有多邊形填充在其中,他們已經顯示顏色多邊形的面積差,但我有LAT多頭它沒有boundarys,但我會只圈,在我所表現出的差異來代表。 – rsayam91

回答

0

你的意思是這樣的?

require(dplyr) 

#filter out those without USERTXT1 value 
data = filter(data,USERTXT1!="") 

#some data fomatting 
data$Latitude = as.numeric(data$Latitude) 
data$Longitude = as.numeric(data$Longitude) 
data$Loss_ratio = as.numeric(data$Loss_ratio) 
data$USERTXT1 = as.factor(data$USERTXT1) 


require(ggmap) 
#get basemap 
basemap <- get_map(location = c(lon = 0.5*(min(data$Longitude)+max(data$Longitude)), 
         lat = 0.5*(min(data$Latitude)+max(data$Latitude))), 
         color = "color", 
         source = "google", 
         maptype = "satellite", 
         zoom = 4) 

#take logarithm of loss ratio to reduce dispersion 
data$Loss_ratio = log(data$Loss_ratio+1) 

#create ggmap object 
map = ggmap(basemap, 
      ylab = "Latitude", 
      xlab = "Longitude") 
map = map + geom_point(data=data,aes(y=Latitude, 
            x=Longitude, 
            color=Loss_ratio)) 
map = map + facet_grid(~USERTXT1) 
map 

enter image description here

+0

感謝分享代碼,我可以知道usertxt1篩選完成,中間有沒有空字段? 我在運行map = ggmap(mapImageData1,ylab =「Latitude」,xlab =「Longitude」)時出現以下錯誤: 對象'mapImageData1'找不到 – rsayam91

+0

我的錯我在粘貼SO代碼字段後更改了一些代碼 - 它現在上面 – CMichael

+1

非常感謝它的工作。 – rsayam91