【发布时间】:2016-01-14 03:45:52
【问题描述】:
ggplot2 的新手,我已经在网上搜索过,但仍然无法弄清楚这一点。 我了解如何在 ggplot2 中绘制箱线图,我的问题是当它位于函数内部时,我无法传递用于组的变量。
所以,通常情况下(即不在函数内),我会这样写:
ggplot(myData, aes(factor(Variable1), Variable2)) +
geom_boxplot(fill="grey", colour="black")+
labs(title = "Variable1 vs. Variable2" ) +
labs (x = "variable1", y = "Variable2")
myData 是我的数据框 变量 1 是一个 2 水平因子变量 变量 2 是一个连续变量 我想通过它的 2 个级别/组制作变量 1 的箱线图 这工作正常, 但是一旦我在一个函数中写了这个,我就无法让它工作。
我在编写函数时的尝试:
myfunction = function (data, Variable1) {
ggplot(data=myData, aes_string(factor("Variable1"), "Variable2"))+
geom_boxplot(fill="grey", colour="black")+
labs(title = paste("Variable1 vs. Variable2" )) +
labs (x = "variable1", y = "Variable2")
}
这只给了我一个箱线图(而不是 2),就好像它从来没有理解 factor(Variable1) 命令(并且对整个变量 2 做了一个箱线图,而不是先将它们按变量 1 级别分开,然后箱线图它们)。
【问题讨论】: