2015-09-24 2 views
0

Я пытаюсь распечатать R-карту со следующей функцией (см. Внизу) Вход представляет собой кадр данных, который содержит долготу, широты в десятичном формате и ошибки, которые будут отображаться как цветная пуля точки.R cran ggplot print map

Это работает вполне нормально, но я хочу добавить новую дополнительную точку, кроме того, что включает в себя кадр данных, который будет иметь другой тип (вместо точки, возможно, крест или квадрат) и с фиксированным красным цветом , вместо того, чтобы следовать цветовой рампе, у меня есть для остальных точек.

Не могли бы вы помочь мне разобраться? Regard Alex

dfE<-data.frame(c(-0.1456250,-0.1442639),c(51.51476,51.51492),c(0.018878676,0.111847050)) 
names(dfE) <- c("Longitude", "Latitude", "Error") 
stationaryPoint<-data.frame(0.1422361,51.51516) 
names(stationaryPoint) <- c("Longitude", "Latitude") 
data<-dfE 
jet.colors <- colorRampPalette(c("#00007F", "red", "#007FFF", "yellow", "#7FFF7F", "cyan", "#FF7F00", "blue", "#7F0000")) 
bbox <- c(min(data[, 1])-0.001, min(data[, 2])-0.001, max(data[, 1])+0.001, max(data[, 2])+0.001) 
mp <- get_stamenmap(bbox, maptype = "toner", zoom = zoom) 

ggmap(mp, darken = 0) + geom_point(aes(Longitude, Latitude, colour =Error), data = dfE, size = 3) 

Я попытался добавить строку ниже, чтобы добавить дополнительные точки с различным цветом и формой на ggmap линии раньше, но я всегда получаю ошибку

  • geom_point (ОЗ (долготу, Широта), данные = стационарныйPoint, размер = 3, форма = 4, цвет = «красный»)
+0

, пожалуйста, укажите свои данные с 'dput (данных)'. –

+0

спасибо, что добавили их на мой inital пост – Alex

+0

Я до сих пор не могу воспроизвести ваш график. Пожалуйста, сделайте действительно [воспроизводимый пример] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example), то есть пример, где я просто копирую код и его работает до такой степени, что вам нужна помощь. –

ответ

0

Поскольку вы не предоставили никаких данных, вам будет сложно помочь.

Решение вашей проблемы может быть, чтобы добавить еще один слой с geom_point:

# create new data.frame with location of point you want to plot 
newdata <- data.frame(Longitude = c(40.7143528), Latitude = c(-74.0059731)) # New York 

ggmap(mp, darken = 0) + 
    geom_point(aes(Longitude, Latitude, colour =Error), data = dfE, size = 3) + 
    geom_point(data = newdata, shape = 15) + 
    RestofyourCode