2015-02-05 156 views
1

当前以下条形图的默认颜色为Apct =红色,BPct =绿色,CPct =蓝色。如何在条形图中手动设置颜色

如何更改颜色以使Apct = Purple,BPct = Black,CPct = Red?

这里是工作代码:

library(reshape) 
Time<-data.frame(Time = c(as.POSIXct("2015-02-05 14:35:00"), as.POSIXct("2015-02-05 14:40:00"))) 
APct<-c(.1,.2,.7) 
BPct<-c(.2,.4,.4) 
Time 
data<-cbind(Time, rbind(APct, BPct)) 
data 
colnames(data)<-c("Time", "APct","BPct","CPct") 
rownames(data)<- NULL 
data 
data<-melt(data, measure.vars =c("APct","BPct","CPct")) 
    ggplot(data=data, aes(x = Time, y=value, fill=variable)) + 
    geom_bar(stat="identity") + 
    ggtitle("% ") + xlab("Time") + 
    ylab("Percentage") +theme(axis.text.x = element_text(angle = 90, hjust = 1)) 

而且 -

我怎么知道那紫色将与APCT去?它是按字母顺序排列的,还是我可以手动设置某种东西Apct = Purple?

还有一种方法可以让Cpct始终是底部栏,BPCt中间栏和APct顶部栏?

谢谢。

回答

1

您可以使用scale_fill_manual来控制颜色。

所以你要ggplot通话变得

ggplot(data=data, aes(x = Time, y=value, fill=variable)) + 
geom_bar(stat="identity") + 
ggtitle("% ") + xlab("Time") + 
ylab("Percentage") +theme(axis.text.x = element_text(angle = 90, hjust = 1)) + 
scale_fill_manual(values=c("purple","black","red")) 
+0

感谢xraynaud但我怎么知道紫将与APCT去?它是按字母顺序排列的,还是我可以手动设置某种东西Apct = Purple? – user3022875 2015-02-05 21:52:24

+0

是否也是一种使其成为Cpct始终是底部酒吧,BPCt中间酒吧和APct顶部酒吧的方法? – user3022875 2015-02-05 21:55:25

+0

你的变量按照你在'measure.vars = c(“APct”,“BPct”,“CPct”)中指定的顺序(至少在我的计算机上;我不是很熟悉'melt'。您想要的颜色的顺序与您的measure.vars参数相同,并指定'measure.vars = c(“CPct”,“BPct”,“APct”)'来获得您想要的顺序 – xraynaud 2015-02-05 22:10:22

相关问题