我有一个结构相同的 Dataframe 列表,我想使用ggplot将所有这些 Dataframe 的信息绘制在R中的同一个图上,就像使用facet_wrap在一张图像上显示多个面板一样,但我遇到了麻烦。下面我创建了一个可重现的示例。
library(ggplot)
#Designating 3 datasets:
data_1 <- mtcars
data_2 <- mtcars
data_3 <- mtcars
#Making them into a list:
mylist <- list(data_1, data_2, data_3)
#What things should look like, with facet_wrap being by "dataset", and thus a panel for each of the
#three datasets presented.
ggplot(iris, aes(x = Sepal.Length, y = Sepal.Width)) + geom_point() + facet_wrap(~Species)
但是,当我运行下面的代码时,我得到一个错误,指出数据必须以 Dataframe 的形式呈现,而不是列表:
ggplot(mylist, aes(x = cyl, y = mpg)) + geom_point() + facet_wrap(~.x)
有人知道使用ggplot从这样的列表中绘图的最佳方法吗?你必须在lapply()中 Package ggplot吗?
1条答案
按热度按时间t30tvxxf1#
一个选项是使用
dplyr::bind_rows
等命令按行绑定 Dataframe :