Следующий код
map<-get_map(location=params$chosenState, zoom=6,maptype='hybrid',source="google")
data<-sightings[sightings$State==params$chosenState, ]
ggmap(map, base_layer=ggplot(aes(x=lng,y=lat),data=data)) +geom_point(color="red",alpha=0.3)
отлично работает на консоли, при условии, что я настроил фрейм данных под названием params и прочитал свои данные в фрейме данных под названием наблюдения. Он создает этот график, когда параметр params$chosenState равен «OH».
Однако, когда я перемещаю все в документ Markdown
---
title: "UFOs"
output: html_document
params:
chosenState: "OH"
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE)
library(ggmap)
library(ggplot2)
sightings<- read.csv("UFOs_coord.csv",header=TRUE)
UFOPlot<-function(){
map<-get_map(location=params$chosenState, zoom = 6,maptype='hybrid',source="google")
data<-sightings[sightings$State==params$chosenState, ]
ggmap(map, base_layer=ggplot(aes(x=lng,y=lat),data=data))
}
```
## UFO Sightings
Below is the locations of UFO sightings in ``r params$chosenState``
```{r}
UFOPlot()
```
и пошел вязать, я получаю это сообщение об ошибке
Ошибка в if (is.waive(data) || empty(data)) return(cbind(data, PANEL = integer(0))) : отсутствует значение там, где требуется TRUE/FALSE Вызовы: ... lapply -> FUN -> -> е -> -> е
Мне интересно, есть ли что-то основное в использовании ggmap в Markdown, чего мне не хватает? Это первый раз, когда я когда-либо пытался это сделать.
Вот начало данных кадра данных
Date...Time Country City State Shape lat lng
9 12/19/16 18:30 USA Huber Heights OH Cylinder 39.85902 -84.11136
21 12/18/16 19:00 USA Lancaster OH Light 39.71368 -82.59933
321 11/18/16 23:30 USA Columbus OH Cylinder 39.96226 -83.00071
326 11/18/16 19:15 USA Stone Creek OH Triangle 40.39729 -81.56206
327 11/18/16 18:30 USA Carrollton OH Circle 40.57284 -81.08565
336 11/17/16 21:30 USA Athens OH Light 39.32924 -82.10126
ОБНОВИТЬ:
Может быть, у меня что-то не так с моей логической подпиской? dplyr и вызов ggmap, предложенный Дхираджем, похоже, помогли. Этот документ вяжется просто отлично
---
title: "UFOs"
output: html_document
params:
chosenState: "OH"
---
```{r setup, include=FALSE}
knitr::opts_chunk$set(echo = FALSE, message= FALSE, warning=FALSE)
library(ggmap)
library(ggplot2)
library(dplyr)
sightings<- read.csv("UFOs_coord.csv",header=TRUE)
UFOPlot<-function(){
map<-get_map(location=params$chosenState, zoom = 6,maptype='hybrid',source="google")
data <- sightings %>% select(-Summary, -Shape) %>% filter(State==params$chosenState)
ggmap(map) + geom_point(data=data, aes(x=lng,y=lat), color="red", alpha=0.3)
}
```
## UFO Sightings
Below is the locations of UFO sightings in ``r params$chosenState``
```{r}
UFOPlot()
```
params$chosenState
находится в Огайо. Не могли бы вы добавить некоторые значения широты и долготы изsightings
для Огайо, чтобы это воспроизводилось? - person Dhiraj   schedule 13.03.2017