繁体   English   中英

在geom_bar(aes =)和position_dodge(width =)中呈现的“ width =”是什么单位?

[英]What units are the 'width = ' in geom_bar(aes = ) and position_dodge(width = ) rendered in?

我想在其中一个躲避的酒吧上专门放置一些东西,我该怎么做呢?

在下面的示例中,我想在条形图的cat3组中的A3上专门分层。 我知道cat3的x = 3,但是由于闪避宽度和小节宽度的相互依存关系,似乎很难瞄准该小节。 我可以使用任何公式来计算x坐标吗? 我在下面提供了示例代码。 谢谢

x1 <- c(15,75,28,60,80,100)
x2 <- c('cat1','cat2','cat3','cat1','cat2','cat3')
x3 <- c('A1','A2','A3','A4','A1','A2')
data=data.frame(cbind(x1,x2,x3),stringsAsFactors = F)
data$x1 <- as.numeric(data$x1)
data$x2 <- factor(data$x2)
data$x3 <- factor(data$x3)

ggplot(data,aes(y = x1, x = x2)) + geom_bar(stat = 'identity', 
                                 aes(fill = data$x3, width = 0.5), 
                                 position = position_dodge(width = 0.8))

条形图

position_dodge()width参数指定左栏的最左边缘和右栏的最右边缘之间的距离。 闪避宽度为0.8时,x3类别的x = 3的起点与任一条边之间的距离为0.4(右侧为+0.4,左侧为-0.4)0.4的一半(即0.2)将将您带到条的中点(再次在+0.2处在左侧,-0.2处)。 不论钢筋宽度如何,都是如此。

这是一个示例,其中我在cat3的右栏中绘制了一个H。 y单位与y轴上的单位对齐。

ggplot(data,aes(y = x1, x = x2)) + 
    geom_bar(stat = 'identity',
             aes(fill = x3, width = 0.5), 
             position = position_dodge(width = 0.8))+
    geom_text(aes(x = 3.2, y = 25, label = "H"), size = 10)

UpdatedImageWithLetterH

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM