我想通過使用小節來顯示某些時期的不同值,在ggplot2中設計出一個不錯的圖。我得到了圖形,但是我無法在圖表的正面添加圖例。我的數據幀DF
有3個變量Month,variable,value
。這些變量是melt()
函數在另一個數據中的結果(我在最後部分添加dput()
版本DF
)。所以,我的數據幀DF
看起來是這樣的:如何在ggplot2條形圖中添加圖例
Month variable value
1 m2 Power 1258978.9
2 m3 Power 1608317.4
3 m4 Power 1293821.1
4 m5 Power 1819283.8
5 m6 Power 1436552.9
6 m7 Power 875170.3
7 m8 Power 1315856.2
8 m9 Power 710004.3
9 m10 Power 889398.1
10 m11 Power 1114883.1
11 m12 Power 1419242.1
12 m13 Power 1585857.2
13 m14 Power 1010455.6
14 m15 Power 1292333.4
要顯示value
變量由month
演變我用這個代碼:
library(ggplot2)
library(scales)
ggplot(DF, aes(x = Month, y = value))+geom_bar(position="identity",fill="#FF6C91",colour="black",size=1)+ scale_y_continuous(labels = comma,breaks=pretty_breaks(n=7),limits=c(0,max(DF$value,na.rm=T)))+
theme(axis.text.x=element_text(angle=90,colour="grey20",face="bold",size=12),axis.text.y=element_text(colour="grey20",face="bold",hjust=1,vjust=0.8,size=15),axis.title.x=element_text(colour="grey20",face="bold",size=16),axis.title.y=element_text(colour="grey20",face="bold",size=16))+xlab('Month')+ylab('')+ ggtitle("My graph")+theme(plot.title = element_text(lineheight=3, face="bold", color="black",size=24))+theme(legend.text=element_text(size=14),legend.title=element_text(size=14))
有了這個代碼,我得到了下一個圖形:
結果幾乎是完美的,但我不知道如何在圖的右側添加具有相同顏色條的圖例,以便在此圖像中提供更多信息。我試圖在geom_bar
裏添加fill
參數,但是我無法得到我想要的結果。該dput()
版本的DF
是下一個:
DF=structure(list(Month = c("m2", "m3", "m4", "m5", "m6", "m7",
"m8", "m9", "m10", "m11", "m12", "m13", "m14", "m15"), variable = structure(c(1L,
1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L), .Label = "Power", class = "factor"),
value = c(1258978.86, 1608317.42, 1293821.14, 1819283.78,
1436552.93, 875170.34, 1315856.24, 710004.35, 889398.08,
1114883.11, 1419242.11, 1585857.22, 1010455.56, 1292333.35
)), .Names = c("Month", "variable", "value"), row.names = c(NA,
-14L), class = "data.frame")
你的幫助非常感謝。
你只有一種顏色吧爲什麼你需要一個傳奇?真正的DF有更多的'變量'水平? – 2014-08-30 17:18:35
@ user1317221_G - 我將問題解釋爲意味着OP想要「使用」該空間來提供可能與數據本身不直接相關的輔助信息......但主要是以我的名義猜想。 – Chase 2014-08-30 17:30:31
重複http://stackoverflow.com/questions/13353396/add-legend-to-geom-bar-using-the-ggplot2-package – 2014-08-30 17:30:56