我试图理解为什么输出facet_grid()
and facet_wrap()
尽管输入相同,但它们是不同的:
面网格
ggplot(temp, aes(x = valor)) +
geom_histogram(binwidth = 5, fill = NA, color = "black") +
facet_grid(estratificacao ~ referencia, scales = "free") +
scale_x_continuous(breaks = seq(0, 100, 10)) + theme_classic()
刻面包裹
ggplot(temp, aes(x = valor)) +
geom_histogram(binwidth = 5, fill = NA, color = "black") +
facet_wrap(estratificacao ~ referencia, scales = "free") +
scale_x_continuous(breaks = seq(0, 100, 10)) + theme_classic()
看,论证scales = "free"
没有相同的行为facet_grid()
and facet_wrap()
。这能解释什么吗?
参考这个链接 http://www.cookbook-r.com/Graphs/Facets_(ggplot2)/:
facet_grid
通过一个或两个在水平和/或垂直方向上变化的变量将数据分割成多个方面,而facet_wrap
将面彼此相邻放置,并用一定数量的列或行包裹。换句话说,facet_wrap
仅具有水平尺寸。
因此,使用该链接中的示例,sp + facet_grid(. ~ sex)
会表现得一样sp + facet_grid( ~ sex)
。就你而言,facet_grid(. ~ referencia)
and facet_wrap( ~ referencia)
应该产生相同的情节。
对于二维或多维面,facet_grid
根据参数生成绘图网格(vertical ~ horizontal)
. facet_wrap
另一方面,只会水平堆叠图。然后,用户可以通过指定列数或行数来设置布局。
现在,当scales = "free"
添加了参数,方面facet_grid
仍然会受到网格的限制,因此同一行上的图不能有不同的 y 轴。同样,每列只能有一个 x 轴。使用facet_wrap
不过,每个图都是独立显示的,因此它可以“释放”其 x 轴和 y 轴。
在我看来,facet_grid
当您想要相对比较类别内的图时非常有用,这可以通过设置相同的轴比例来完成。同时,facet_wrap
对于彼此之间更加独立的图更有用。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)