当绘制带有长名称的分类变量(例如箱形图)的图形时,必须使用ggplot2中的theme
命令移动名称,然后可以设置轴标记和文本之间的距离然而,当仅在一个轴上需要一些时间时,该距离反映在两个轴上。下面是一些示例代码:
df<-data.frame(X=rnorm(50,0,10),Y=c(rep("Some Text",25),rep("Some Larger Text That Takes Space",25)))
#classical boxplots
ggplot(df,aes(x=Y,y=X))+geom_boxplot()+theme(axis.text=element_text(size=20),axis.text.x=element_text(angle=45))
#the x axis labels need to be shifted downwards
ggplot(df,aes(x=Y,y=X))+geom_boxplot()+theme(axis.text=element_text(size=20),axis.text.x=element_text(angle=45),axis.ticks.margin=unit(4,"cm"))
#now they are shifted but there is unnecessary space on the y-axis
我们如何设置axis.ticks.margin
仅对一个轴起作用?
答案 0 :(得分:2)
试试这个例子:
library(grid)
axis.ticks.margin=unit(c(4,-4),'cm'))
因此,ggplot2
调用变为:
ggplot(df,aes(x=Y,y=X))+
geom_boxplot()+
theme(axis.text=element_text(size=20),
axis.text.x=element_text(angle=45),
axis.ticks.margin=unit(c(4,-4),'cm'))