chl*_*chl 57
您始终可以使用width
参数进行播放,如下所示:
df <- data.frame(x=factor(LETTERS[1:4]), y=sample(1:100, 4))
library(ggplot2)
ggplot(data=df, aes(x=x, y=y, width=.5)) +
geom_bar(stat="identity", position="identity") +
opts(title="width = .5") + labs(x="", y="") +
theme_bw()
Run Code Online (Sandbox Code Playgroud)
与以下其他设置进行比较width
:
到现在为止还挺好.现在,假设我们有两个因素.如果你想用间隔均匀的并列酒吧玩(当使用像space
连同beside=TRUE
中barplot()
),它使用不是那么容易geom_bar(position="dodge")
:你可以改变线条的宽度,而不是在相邻条之间添加空间(和我没有找到一个方便解决方案在谷歌).我最终得到了类似的东西:
df <- data.frame(g=gl(2, 1, labels=letters[1:2]), y=sample(1:100, 4))
x.seq <- c(1,2,4,5)
ggplot(data=transform(df, x=x.seq), aes(x=x, y=y, width=.85)) +
geom_bar(stat="identity", aes(fill=g)) + labs(x="", y="") +
scale_x_discrete(breaks = NA) +
geom_text(aes(x=c(sum(x.seq[1:2])/2, sum(x.seq[3:4])/2), y=0,
label=c("X","Y")), vjust=1.2, size=8)
Run Code Online (Sandbox Code Playgroud)
用于$ X $轴上的载体"注入"在data.frame,所以这样你就改变外间隔,如果你想要的,而width
可以控制的内部间隔.可以通过使用增强$ x $ -axis的标签scale_x_discrete()
.
小智 40
对于因子栏之间的空间使用
ggplot(data = d, aes(x=X, y=Y, fill=F))
+ geom_bar(width = 0.8, position = position_dodge(width = 0.9))
Run Code Online (Sandbox Code Playgroud)
geom_bar中的宽度控制相对于x轴的条宽度,而position_dodge中的宽度控制两个条形相对于x轴的宽度.玩宽度找到你喜欢的宽度.
归档时间: |
|
查看次数: |
60888 次 |
最近记录: |