【发布时间】:2015-11-23 18:12:30
【问题描述】:
我想在其中一个闪避的条上专门添加一些东西,我怎么能做到这一点?
在下面的示例中,我想在 barplot 的 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))
【问题讨论】:
-
它们以绘图单位(至少条宽)为单位。
geom_bar宽度为 1 将使条形接触,一切都与此相关。顺便说一句,永远不要在aes()中使用data$column- 如果您处理或使用更复杂的统计数据,它将覆盖数据参数并导致问题。你应该有fill = x3而不是fill = data$x3。