2011-12-11 87 views
8

我困在ggplot2中製作的一系列極座標直方圖的小標籤問題上(環繞?這些東西叫什麼?)。調整coord_polar()直方圖中文本標籤的位置

下面是一個簡單的例子,如何將數據和圖表看:

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

我想移動文本標籤(遠離中央)。

通常情況下,我會調整與hjustvjustgeom_text()的位置,但似乎與coord_polar(),其結果是所有的標籤向上/向下移動或向左/向右,而不是在/向外。

這聽起來很平凡 - 可能是 - 但我還沒有找到任何適用的例子或解決方法,所以我很抱歉,如果這個問題看起來很愚蠢。

回答

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