小编gia*_*nic的帖子

如何在lapply函数中切片数据

我想在带有grid.arrange的网格上排列N ggplot(每个面都是多面的)。

library(tidyverse)
library(ggplot2)
library(gridExtra)


plots <- lapply(unique(mtcars$cyl), function(cyl) {
    data <- mtcars %>% filter(cyl == cyl)
    ggplot(data, aes(x=mpg, y=hp))+
        geom_point(color = "blue")+
        facet_wrap(.~carb)}) %>% 
    do.call(grid.arrange, .)
do.call(grid.arrange, plots )
Run Code Online (Sandbox Code Playgroud)

问题是所有图都基于整个数据集,并且它们呈现相同的图,而当我按行过滤它们时,它们应该保持不同

data <- mtcars %>% filter(cyl == cyl)

r ggplot2 lapply dplyr

6
推荐指数
1
解决办法
142
查看次数

标签 统计

dplyr ×1

ggplot2 ×1

lapply ×1

r ×1