R 自定义分组条形图上的条形图颜色?
我需要更改“案例”栏的颜色。例如,我希望a年龄组的“案例”栏为黄色,b年龄组的“案例”栏为蓝色,c年龄组的“案例”栏为绿色,等等。我只希望ggplot中当前为棕色的“案例”栏的颜色都是不同的颜色 以下是原始数据:R 自定义分组条形图上的条形图颜色?,r,ggplot2,R,Ggplot2,我需要更改“案例”栏的颜色。例如,我希望a年龄组的“案例”栏为黄色,b年龄组的“案例”栏为蓝色,c年龄组的“案例”栏为绿色,等等。我只希望ggplot中当前为棕色的“案例”栏的颜色都是不同的颜色 以下是原始数据: data<-data.frame("agegroup" = c("a","b","c","a","b","c"), "type&q
data<-data.frame("agegroup" = c("a","b","c","a","b","c"), "type" = c("case","case","case","control","control","control"), "value" = c(1,2,3,2,2,2))
提前感谢。从
ggplot
的角度来看,您希望填充颜色是类型
和年龄组
列的组合。我们将此组合创建为单独的列,然后正常绘制:
data$fill_type = with(data, ifelse(type == "case", paste(type, agegroup), type))
ggplot(data, aes( x = agegroup, y=value, fill=fill_type)) +
geom_bar(
width = 0.4, position = position_dodge(width=0.65), stat="identity") +
scale_y_continuous(expand = c(0,0),limits=c(0,10), breaks=seq(from=0, to= 10, by=1)) +
theme(legend.position = c(0.1, 0.8),
axis.text.x=element_text(angle=60, hjust=1, size=12, face="bold"),
axis.title.x=element_text(margin=margin(t=10,r=20,b=20,l=20),face="bold", size=12),
legend.text=element_text(size=8)) +
ylab("(%)")#+
#scale_fill_manual(values = c("brown4","grey25"), name="",labels=c("case","controls",""))
data$fill_type = with(data, ifelse(type == "case", paste(type, agegroup), type))
ggplot(data, aes( x = agegroup, y=value, fill=fill_type)) +
geom_bar(
width = 0.4, position = position_dodge(width=0.65), stat="identity") +
scale_y_continuous(expand = c(0,0),limits=c(0,10), breaks=seq(from=0, to= 10, by=1)) +
theme(legend.position = c(0.1, 0.8),
axis.text.x=element_text(angle=60, hjust=1, size=12, face="bold"),
axis.title.x=element_text(margin=margin(t=10,r=20,b=20,l=20),face="bold", size=12),
legend.text=element_text(size=8)) +
ylab("(%)")#+
#scale_fill_manual(values = c("brown4","grey25"), name="",labels=c("case","controls",""))