R 通过应用函数生成多个ggplot盒形图
我想知道是否有可能生成一组箱线图,类似于使用apply函数生成的嵌套循环组合 这可能不可能/不必要,但我认为这应该是可能的,我就是不知道该怎么做 我需要能够绘制此图,以查看100个因子如何与一个变量进行比较(R 通过应用函数生成多个ggplot盒形图,r,ggplot2,apply,R,Ggplot2,Apply,我想知道是否有可能生成一组箱线图,类似于使用apply函数生成的嵌套循环组合 这可能不可能/不必要,但我认为这应该是可能的,我就是不知道该怎么做 我需要能够绘制此图,以查看100个因子如何与一个变量进行比较(mtcars$mpg) 车头(mtcars) (我在8:11){ 对于(j在8:11中){ 如果(i!=j){ 标题=粘贴(名称(mtcars)[i],名称(mtcars)[j], sep=“/”) p将if块放入函数: plotGG <- function(i,j) { i
mtcars$mpg
)
车头(mtcars)
(我在8:11){
对于(j在8:11中){
如果(i!=j){
标题=粘贴(名称(mtcars)[i],名称(mtcars)[j],
sep=“/”)
p将if块放入函数:
plotGG <- function(i,j)
{
if (i != j) { ... } else{ ... }
}
它是有效的
由于ggplot
的作用域问题,您的代码将无法工作。但您可以在此处查看解决方案:
编辑:
您可以根据需要完成包装:
multiPlotGG <- function(l1,l2) {
mapply(plotGG,rep(l1,each = length(l2)),rep(l2,length(l1)))
}
multiPlotGG(8:11,8:11)
multiPlotGGmapply
在您的答案中,将只生成四个i=jThanks@MaratTalipov的组合。之前的解决方案是指向正确的方向。使用包装器更新。干杯,伙计们:)应用函数对我来说真的不直观!
mapply(plotGG,8:11,8:11)
multiPlotGG <- function(l1,l2) {
mapply(plotGG,rep(l1,each = length(l2)),rep(l2,length(l1)))
}
multiPlotGG(8:11,8:11)