Построение точек с помощью geom_point() и gmap()
У меня есть 20 мест UTM, включенных ниже.РЕДАКТИРОВАТЬ Я изменил включенные данные, чтобы включить местоположения в Lat Long и добавил дополнительный код ниже. Я получаю тот же результат с UTM или Lat, Long. Я дважды проверил точки в Google Планета Земля, и они, безусловно, находятся в пределах базовой карты, которую я определил ниже. Любые другие предложения...
Data <- structure(list(Latitude = c(43.383819, 43.383787, 43.383838,
43.384088, 43.392086, 43.393099, 43.388453, 43.384829, 43.399706,
43.40308, 43.408739, 43.40765, 43.407522, 43.413508, 43.418288,
43.416157, 43.417822, 43.417221, 43.417209, 43.417603), Longitude = c(-111.130989,
-111.130988, -111.130996, -111.129578, -111.122884, -111.12143,
-111.126514, -111.12809, -111.125333, -111.126616, -111.139745,
-111.140401, -111.140614, -111.161305, -111.158135, -111.153607,
-111.141158, -111.13867, -111.138528, -111.138884), UTM_E = c(489389.998429055,
489390.073847615, 489389.434748439, 489504.334690555, 490047.849470232,
490165.770080405, 489753.250369502, 489624.98731782, 489850.781221576,
489747.455360571, 488685.407063201, 488632.089708587, 488614.819667178,
486940.804672798, 487198.453753294, 487564.574155778, 488572.710048877,
488774.012335271, 488785.505688775, 488756.758707237), UTM_N = c(4803447.00888757,
4803443.45497495, 4803449.11983808, 4803476.70438902, 4804364.10875695,
4804476.43597084, 4803961.08216192, 4803558.81058659, 4805210.65084223,
4805585.51119635, 4806215.67635871, 4806094.82531047, 4806080.6391722,
4806748.45554565, 4807278.81358453, 4807041.46688704, 4807224.59410279,
4807157.51112311, 4807156.15933319, 4807199.96352795)), .Names = c("Latitude",
"Longitude", "UTM_E", "UTM_N"), row.names = c(NA, 20L), class = "data.frame")
И я могу построить их в использовании ggplot
library(ggplot2)
ggplot(aes(x = UTM_E, y = UTM_N), data = Data )+ geom_point()
ggplot(aes(x = Latitude, y = Longitude), data = Data )+ geom_point()
Однако я хочу нанести их поверх базового слоя карты, используя qmap
и указали объект ниже.
library(ggmap)
Area <- "palisades wyoming"
BaseMap <- qmap(Area , zoom = 10)
BaseMap
Следуя полезному сайту ggmap, указанному здесь, я пытаюсь нанести точки на базовую карту с помощью следующего кода
BaseMap + geom_point(aes(x = UTM_E, y = UTM_N), data = Data )
BaseMap + geom_point(aes(x = Latitude, y = Longitude), data = Data )
но получите следующее предупреждение
Removed 20 rows containing missing values (geom_point).
Почему значения отсутствуют, когда не отображаются с ggplot()
, но только в комплекте с geom_point()
Отображение точек внутри ggplot()
вернуть следующую ошибку несовместимости между ggplot()
а также qmap()
BaseMap + ggplot(aes(x = UTM_E, y = UTM_N), data = Data )+ geom_point()
Error in p + o : non-numeric argument to binary operator
In addition: Warning message:
Incompatible methods ("+.gg", "Ops.data.frame") for "+"
Заранее спасибо.
1 ответ
Вы можете объединить их. Не добавляйте свою карту к объекту, просто вызовите ее с помощью кода geom_point:
qmap(Area , zoom = 10) + geom_point(aes(x = UTM_E, y = UTM_N), data = Data )
И вы напечатаете свою карту.
Удачи!