gpt4 book ai didi

r - 如何使用R ggplot更改x轴刻度标签名称,顺序和箱线图颜色?

转载 作者:行者123 更新时间:2023-12-03 13:19:23 25 4
gpt4 key购买 nike

我有一个包含csv文件的文件夹,每个文件都有两列数据,例如:

0,red
15.657,red
0,red
0,red
4.429,red
687.172,green
136.758,green
15.189,red
0.152,red
23.539,red
0.348,red
0.17,blue
0.171,red
0,red
61.543,green
0.624,blue
0.259,red
338.714,green
787.223,green
1.511,red
0.422,red
9.08,orange
7.358,orange
25.848,orange
29.28,orange

我正在使用以下R代码生成箱形图:
files <- list.files(path="D:/Ubuntu/BoxPlots/test/", pattern=NULL, full.names=F, recursive=FALSE)
files.len<-length(files)
col_headings<-c("RPKM", "Lineage")

for (i in files){
i2<-paste(i,"png", sep=".")
boxplots<-read.csv(i, header=FALSE)
names(boxplots)<-col_headings
png(i2)
bplot<-ggplot(boxplots, aes(Lineage, RPKM)) + geom_boxplot(aes(fill=factor(Lineage))) + geom_point(aes(colour=factor(Lineage)))
print(bplot)
graphics.off()
}

现在,我想更改框线图的颜色以匹配其相应的x轴颜色标签。我还想更改x轴标签的名称及其顺序。有没有办法使用ggplot或qplot做到这一点?

最佳答案

以@shadow的答案为基础,这是您可以手动更改x轴标签的方法。我还进行了其他一些更改,这些更改有助于改善图形和图例的外观:

colorder <- c( "green", "orange", "red", "blue")
bplot<-ggplot(temp, aes(Lineage, RPKM)) +
geom_boxplot(aes(fill=factor(Lineage))) +
geom_point(aes(colour=factor(Lineage))) +
scale_color_manual(breaks=colorder, # color scale (for points)
limits=colorder,
values=colorder,
labels=c("hESC1","hESC2","hESC3","hESC4"),
name="Group") +
scale_fill_manual(breaks=colorder, # fill scale (for boxes)
limits=colorder,
values=colorder,
labels=c("hESC1","hESC2","hESC3","hESC4")
name="Group") +
scale_x_discrete(limits=colorder,labels=c("hESC1","hESC2","hESC3","hESC4")) +
theme_bw()

在绘图的 labels层中添加 scale_x_discrete选项,可以更改轴标签。在 labelsscale_fill_manual中添加 scale_color_manual可以更改图例标签。两者都添加 name可以更改图例标题。最后,我将 theme_bw()添加到绘图中以使背景变白并在绘图周围添加边框。希望有帮助!

关于r - 如何使用R ggplot更改x轴刻度标签名称,顺序和箱线图颜色?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23564607/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com