createMap <- function(df1) {
map <- get_googlemap(center = "Milwaukee") %>% ggmap()+
stat_density2d(data=df1, aes(x=Longitude, y=Latitude, fill=..density..),geom='tile', contour=F, alpha=.5)+
labs(fill = "seizure density")+
scale_fill_viridis(option = "inferno")
return map
}
createMap(my_df)
Я хочу вызвать эту функцию, чтобы вернуть график с именем: map_my_df (т. е. имя набора данных включено в имя). Другими словами, я хочу динамически назвать график (не фрагмент графика, я имею в виду фактическое имя переменной графика) с помощью этой функции и сделать этот график глобально доступным вне функции.
Использование следующего не работает:
paste(map,df1,sep = "_") <- get_googlemap(center = "Milwaukee") %>% ggmap()+
stat_density2d(data=df1, aes(x=Longitude, y=Latitude, fill=..density..),geom='tile', contour=F, alpha=.5)+
labs(fill = "seizure density")+
scale_fill_viridis(option = "inferno")
create_plot <- function(df) {
df_name <- deparse(substitute(df))
ggplot(df, aes(x = x, y = y)) +
geom_point()+
labs(title = df_name, x = "X-axis", y = "Y-axis")
Я думаю, вам нужен assign
.
createMap <- function(df1) {
map <- ggplot(mtcars, aes(wt, mpg)) +
geom_point()
name <- paste("map", deparse(substitute(df1)), sep = "_")
assign(name, map, envir = .GlobalEnv)
}
createMap(mtcars)
map_mtcars
Извините, мой вопрос сбил с толку; отредактировано. Я пытаюсь динамично назвать сам сюжет, а не заголовок. Другими словами, динамическое присвоение имени переменной, хранящей график.