有没有办法将刻面的ylim增加一定百分比,这样我的标签就能很好地适应? 目前,非常小的酒吧将在他们上面留下半个标签。当我使用hjust时,我在大栏的顶部遇到了同样的问题。
到目前为止,这是我的代码:
ggplot(test, aes(x=YEAR, y=(value), fill=variable)) +
labs(title="Test", x=NULL, y="Total", fill=NULL) +
geom_bar(stat="identity"), position="stack") +
facet_grid(variable ~., scales="free") +
theme(legend.position = "none") +
geom_text(aes(x=YEAR, y=(value), label=value), size=3)
答案 0 :(得分:1)
您可以在expand
中使用scale_y_continuous
在顶部和底部添加一些空格:
e.g。
ggplot(test, aes(x=YEAR, y=(value), fill=variable)) +
labs(title="Test", x=NULL, y="Total", fill=NULL) +
geom_bar(stat="identity"), position="stack") +
facet_grid(variable ~., scales="free") +
theme(legend.position = "none") +
geom_text(aes(x=YEAR, y=(value), label=value), size=3)+
scale_y_continuous( expand = c( 0.05 , 0.05 ) )
这会在y刻度的顶部和底部添加少量空间。使更大的空间更大,0更精确地在数据范围内修剪轴。
对于dscrete秤,它的工作方式大致相同:
scale_y_discrete( expand = c( 0.05 , 0.05 ) )
一个极端的例子(因为我无法访问您的数据):
mm <- ddply(mtcars, "cyl", summarise, mmpg = mean(mpg))
ggplot(mm, aes(x = factor(cyl), y = mmpg , fill = factor(cyl))) +
geom_bar(stat = "identity") +
geom_text( aes( label=c("RED","GREEN","BLUE" ) ), size = 15 )+
scale_y_continuous( expand = c(0.5,0.5) )