我现在已经使用过一段时间了,但在使用facet_wrap()
时我仍然不知道自己在做什么。考虑一下这个,例如:
ggplot(df, aes(x, y)) +
geom_bar(stat = "identity") +
facet_wrap(~ z)
它可以正常工作,但每当我使用facet_wrap()
时,我最终只会尝试对其参数的格式进行不同的排列。这是因为我没有知道~
或.
在这些参数中的含义。
有没有人对这些东西有简洁的描述?
答案 0 :(得分:5)
facet_grid
文档状态:
一个公式,其中包含LHS上的行(表格显示)和RHS上的列(表格显示);公式中的点用于表示此维度(行或列)上不应存在分面。公式也可以作为字符串而不是经典公式对象
提供 facet_wrap
docs说:
公式或字符向量。使用单面公式,~a + b或字符向量c(" a"," b")。
两个帮助页面中的示例旨在说明正在进行的操作,但您可以模拟自己的示例以了解其中的差异。 e.g:
library(ggplot2)
gg <- ggplot(mtcars, aes(mpg, wt)) + geom_point()
gg + facet_wrap(~cyl)
gg + facet_wrap("cyl")
gg + facet_wrap(~gear)
gg + facet_wrap("gear")
gg + facet_wrap(gear~cyl)
gg + facet_wrap(c("gear", "cyl"))
gg + facet_wrap(cyl~gear)
gg + facet_wrap(c("cyl", "gear"))
这是与成语IMO精神联系的最好方式。