ggplot 在 facet_wrap 中为每个图添加刻度
ggplot add ticks to each plot in a facet_wrap
我想在 facet_wraps 中上行的图上显示 x 轴刻度。例如:
library(ggplot2)
ggplot(diamonds, aes(carat)) + facet_wrap(~ cut, scales = "fixed") + geom_density()
生成此图:
我想要有刻度线,因为我在这个图上画了:
有没有简单的方法可以达到这个结果?
使用 scales = "free_x"
向每个图添加 x 轴:
ggplot(diamonds, aes(carat)) +
geom_density() +
facet_wrap(~cut, scales = "free_x")
然而,如您所见和语法建议,它还释放了每个图的限制以自动调整,因此如果您希望它们全部一致,则需要使用 xlim
, lims
或 scale_x_continuous
:
ggplot(diamonds, aes(carat)) +
geom_density() +
xlim(range(diamonds$carat)) +
# or lims(x = range(diamonds$carat))
# or scale_x_continuous(limits = range(diamonds$carat))
facet_wrap(~cut, scales = "free_x")
我想在 facet_wraps 中上行的图上显示 x 轴刻度。例如:
library(ggplot2)
ggplot(diamonds, aes(carat)) + facet_wrap(~ cut, scales = "fixed") + geom_density()
生成此图:
我想要有刻度线,因为我在这个图上画了:
有没有简单的方法可以达到这个结果?
使用 scales = "free_x"
向每个图添加 x 轴:
ggplot(diamonds, aes(carat)) +
geom_density() +
facet_wrap(~cut, scales = "free_x")
然而,如您所见和语法建议,它还释放了每个图的限制以自动调整,因此如果您希望它们全部一致,则需要使用 xlim
, lims
或 scale_x_continuous
:
ggplot(diamonds, aes(carat)) +
geom_density() +
xlim(range(diamonds$carat)) +
# or lims(x = range(diamonds$carat))
# or scale_x_continuous(limits = range(diamonds$carat))
facet_wrap(~cut, scales = "free_x")