我在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
给出下图:
我想将文本标签向外移动(远离中心)。
通常,我会使用
hjust
内的vjust
或geom_text()
调整位置,但似乎使用coord_polar()
,结果是将所有标签向上/向下或向左/向右移动,但不能向内/向外移动。这听起来很琐碎-也许是-但我还没有找到任何适用的示例或解决方法,因此,如果这个问题看起来很傻,我深表歉意。
最佳答案
我假设您将数字值称为标签,并且希望它们在饼形图的外面稍微移动一点(与“属性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
关于r - 调整coord_polar()直方图中文本标签的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8468472/