无需创建自定义函数,只需使用现有函数即可!我正在做另一个项目,尝试了两种方法,效果都很好。如果试图在附录中显示更多的图(没有人阅读…),则该方法非常适用 library(ggplot2) library(dplyr) unique_names = as.

无需创建自定义函数,只需使用现有函数即可!我正在做另一个项目,尝试了两种方法,效果都很好。如果试图在附录中显示更多的图(没有人阅读…),则该方法非常适用 library(ggplot2) library(dplyr) unique_names = as.,r,list,ggplot2,R,List,Ggplot2,无需创建自定义函数,只需使用现有函数即可!我正在做另一个项目,尝试了两种方法,效果都很好。如果试图在附录中显示更多的图(没有人阅读…),则该方法非常适用 library(ggplot2) library(dplyr) unique_names = as.list(c("apple", "banana", "carrots")) listy = list() dframe = data.frame(x_var = seq(1:9)) %>% mutate(y_var = x_var^


无需创建自定义函数,只需使用现有函数即可!我正在做另一个项目,尝试了两种方法,效果都很好。如果试图在附录中显示更多的图(没有人阅读…),则该方法非常适用
library(ggplot2)
library(dplyr)

unique_names = as.list(c("apple", "banana", "carrots"))
listy = list()
dframe = data.frame(x_var = seq(1:9)) %>% 
  mutate(y_var = x_var^3)
temp = data.frame(id = c("apple", "apple", "apple", "banana", "banana", "banana", "carrots", "carrots", "carrots"))
dframe = bind_cols(dframe,
                   temp)

fun_plots = function(my_list,
                     my_df,
                     my_appending_list) {
  a = filter(my_df,
             id == my_list)
  plt = ggplot() +
    geom_line(data = a,
              aes(x = x_var,
                  y = y_var))

  my_appending_list$my_list = plt
}

plot_list = lapply(unique_names,
                   fun_plots,
                   my_df = dframe,
                   my_appending_list = listy)
fun_plots = function(my_list,
                     my_df) {
    a = filter(my_df,
               id == my_list)
    plt = ggplot() +
        geom_line(data = a,
                  aes(x = x_var,
                      y = y_var))

    plt
}

plot_list = lapply(unique_names,
                   fun_plots,
                   my_df = dframe)
names(plot_list) = unique_names
library(ggplot2)
library(dplyr)

unique_names = as.list(c("apple", "banana", "carrots"))
listy = list()
dframe = data.frame(x_var = seq(1:9)) %>% 
  mutate(y_var = x_var^3)
temp = data.frame(id = c("apple", "apple", "apple", "banana", "banana", "banana", "carrots", "carrots", "carrots"))
dframe = bind_cols(dframe,
                   temp)

dframe <- group_by(dframe, id) %>% do(plots=ggplot(data=.) +
                              aes(x=x_var, y=y_var) + geom_line() + ggtitle(unique(.$id)))

mylist <- as.list(dframe$plots)

mylist
plot_df <- dframe %>% 
  group_by(id) %>% 
  do(plot = ggplot(.data) + geom_line(aes(x = x_var, y = y_var)) + ggtitle(.data$id))
plot_df
#> Source: local data frame [3 x 2]
#> Groups: <by row>
#> 
#> # A tibble: 3 x 2
#>        id     plot
#> *  <fctr>   <list>
#> 1   apple <S3: gg>
#> 2  banana <S3: gg>
#> 3 carrots <S3: gg>
ggplot(dframe) + geom_line(aes(x = x_var, y = y_var)) + facet_wrap(~ id)