调整coord_polar()直方图中文本标签的位置

时间:2011-12-11 23:49:23

标签: r ggplot2

我坚持使用ggplot2中制作的一系列极性直方图来解决一个小标签问题(圆环?这些东西叫做怎样?)。

以下是数据和图表外观的简化示例:

df <- data.frame(Attribute1=10, Attribute2=1, Attribute3=2,  Attribute4=6,  Attribute5=7)
g <- ggplot(melt.data.frame(df), aes(x=variable, y=value, fill=variable, label=value))
g <- g + geom_bar() + geom_text() + coord_polar()
g

其中给出了以下图表: polar histogram example

我想向外移动文本标签(远离中心)。

通常,我会在hjust内调整vjustgeom_text()的位置,但似乎coord_polar(),结果是将所有标签向上移动/向下或向左/向右,但不在/向外。

这可能听起来微不足道 - 可能是 - 但我还没有找到任何适用的例子或解决方法,所以如果这个问题看起来很傻,我会道歉。

1 个答案:

答案 0 :(得分:11)

我假设您将数值称为标签,并且您希望它们在饼形楔形之外移动一点(而不是“属性1”文本)。

您可以将一些美学映射移动到geom_text调用,并为y值添加一个小值:

g <- ggplot(melt.data.frame(df), aes(x=variable, y=value, fill=variable))
g <- g + geom_bar() + geom_text(aes(y = value + 0.5,label = value)) + coord_polar()
g

enter image description here