我有一个使用facet_wrap
函数创建的多面板图,我想在每个y轴上添加一个顶部刻度(以便每个y轴以一个数字结尾)。
当我使用scale_y_continuous
创建一个绘图时(我根据最大值设置限制),我可以手动执行此操作,但我不确定如何使用facet_wrap
执行此操作。使用max()
设置限制似乎不起作用。
为了让您了解我在说什么,下面是使用ggplot2创建单个图表的代码,并启用y轴上的顶部勾号。
plot <- ggplot(diamonds, aes(clarity)) +
geom_bar() +
scale_y_continuous(expand = c(0, 0),limits=c(0,15000)) +
theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.5),
axis.line = element_line(),
axis.title = element_text(size=15,face="bold")) +
xlab("x_1") +
ylab("y_1") +
theme(panel.background = element_blank()
,panel.grid.major = element_blank()
,panel.grid.minor = element_blank()
,panel.border = element_blank()) +
labs(title = "xy", size = 20)
plot
这就是情节。
提前谢谢! 编辑:我已编辑代码以显示情节。再次感谢!
答案 0 :(得分:1)
您可以为休息时间定义自己的功能。一个简单的解决方案是
break_fct <- function(x){
round(seq(min(x), max(x), length = 5))
}
当然,您可以使用pretty
和最大值的组合来改善这一点。您应该找到一个适合您的数据的解决方案。
plot <- ggplot(diamonds, aes(clarity)) +
geom_bar() +
scale_y_continuous(expand = c(0, 0), breaks = break_fct) +
theme(axis.text.x = element_text(angle = 90, hjust = 1, vjust = 0.5),
axis.line = element_line(),
axis.title = element_text(size=15, face="bold")) +
xlab("x_1") +
ylab("y_1") +
theme(panel.background = element_blank()
,panel.grid.major = element_blank()
,panel.grid.minor = element_blank()
,panel.border = element_blank()) +
labs(title = "xy", size = 20) +
facet_grid(cut~., scales = "free_y")
plot