這里有一個資料
Genotype< - rep(c("CV1"/span>。 "CV2")。 each=3)。
治療< -rep(c("T1"。 "T2","T3")。 2)
RATIO<- c(0. 8,0.7, 0. 9,1.1, 1. 0,0.8)
DataA<- data.frame(Genotype,treatment,RatIO)
而這是一個使用facet_wrap()的圖
A_labels <- data. frame(Genotype=c("CV1">。 "CV1", "CV1"), "CV1" ,
perc= c("NA"。 "NA","PASS")。 治療=c("T1"。 "T2", "T3"),
RATIO=c(1.0,/span> 0. 90, 1.0))
B_labels <- data. frame(Genotype=c("CV2">。 "CV2", "CV2"), "CV2" ,
perc= c("TEST"。 "PASS","FAIL")。 治療=c("T1"。 "T2", "T3"),
RATIO=c(1.2,/span> 1. 1, 1.1))
ggplot(data=DataA。 aes(x=treatment, y=RATIO。 fill=treatment))
geom_bar(stat="identity"/span>。 位置="dodge",寬度= 0。 7)
scale_fill_manual(values= c ("Dark gray"。 "深藍色"。 "暗紅色")
scale_y_continuous(breaks = seq(0,1。 5,0. 2),標簽=規模:: 百分比。 極限= c(0,1. 5))
geom_label(data=A_labels。 aes(x=treatment, y=RATIO, label=perc。 col=treatment), size=6。 fill="white")
geom_label(data=B_labels。 aes(x=treatment, y=RATIO, label=perc。 col=treatment), size=6。 fill="white")
scale_color_manual(values= c ("Blue"/span>。 "Red"。 "Blue"))
labs(x="treatment"。 y="比率(%)")
facet_wrap(~Genotype)
主題(軸。 title = element_text (face = "lain"。 尺寸= 20。 color = "black"),
axis.text. x = element_text(size= 18), axis.text.
axis.text. y = element_text(size= 18), axis.text=
axis.line = element_line(size = 0。 5, color = "black"),
legend.position = 'none')
windows(width=9。 高度=5)
使用facet_wrap()在每個面板上獨立放置文本是成功的,但我不知道如何在每個面板上獨立放置不同顏色的處理。例如,在右邊的面板中,我想將文本顏色改為綠色、黃色和橙色。
由于代碼scale_color_manual(values= c ("Blue", "Red", "Blue"))每個處理的文本顏色在兩個面板上都是一樣的。
你能讓我知道如何在每個面板上獨立地改變每個處理的文本顏色嗎?
謝謝你,
uj5u.com熱心網友回復:
正如你提到的,你只有兩個級別。所以我將以不同的方式來做這件事:
#Loading the data and creating the labels。
Genotype< - rep(c("CV1"/span>。 "CV2")。 each=3)。
治療< -rep(c("T1"。 "T2","T3")。 2)
RATIO<- c(0. 8,0.7, 0. 9,1.1, 1. 0,0.8)
DataA<- data.frame(Genotype,treatment,RATIO)
A_labels <- data. frame(Genotype=c("CV1">。 "CV1", "CV1"), "CV1" ,
perc= c("NA"。 "NA","PASS")。 治療=c("T1"。 "T2", "T3"),
RATIO=c(1.0,/span> 0. 90, 1.0))
B_labels <- data. frame(Genotype=c("CV2">。 "CV2", "CV2"), "CV2" ,
perc= c("TEST"。 "PASS","FAIL")。 治療=c("T1"。 "T2", "T3"),
RATIO=c(1.2,/span> 1. 1, 1.1))
現在,我將為兩個級別創建兩個單獨的圖
ggplot(data=subset(DataA。 基因型=='CV1')。 aes(x=treatment, y=RATIO。 fill=treatment))
geom_bar(stat="identity"/span>。 位置="dodge",寬度= 0。 7)
scale_fill_manual(values= c ("Dark gray"。 "深藍色"。 "暗紅色")
scale_y_continuous(breaks = seq(0,1。 5,0. 2),標簽=規模:: 百分比。 極限= c(0,1. 5))
geom_label(data=A_labels。 aes(x=treatment, y=RATIO, label=perc。 col=treatment), size=6。 fill="white")
scale_color_manual(values= c ("Blue"/span>。 "Red"。 "Blue")
facet_wrap(~Genotype)
labs(x="治療"。 y="比率(%)")
主題(軸。 title = element_text (face = "lain"。 尺寸= 20。 color = "black"),
axis.text. x = element_text(size= 18), axis.text.
axis.text. y = element_text(size= 18), axis.text=
axis.line = element_line(size = 0。 5, color = "black"),
legend.position = 'none')->/span> plot_cv1
ggplot(data=subset(DataA, 基因型=='CV2')。 aes(x=treatment, y=RATIO。 fill=treatment))
geom_bar(stat="identity"/span>。 位置="dodge",寬度= 0。 7)
scale_fill_manual(values= c ("Dark gray"。 "深藍色"。 "暗紅色")
scale_y_continuous(breaks = seq(0,1。 5,0. 2),標簽=規模:: 百分比。 極限= c(0,1. 5))
geom_label(data=B_labels。 aes(x=treatment, y=RATIO, label=perc。 col=treatment), size=6。 fill="white")
scale_color_manual(values= c ("Green"/span>。 "Yellow"。 "Orange")
facet_wrap(~Genotype)
labs(x="治療"。 y="比率(%)")
主題(軸。 title = element_text (face = "lain"。 尺寸= 20。 color = "black"),
axis.text. x = element_text(size= 18), axis.text.
axis.text. y = element_text(size= 18), axis.text=
axis.line = element_line(size = 0。 5, color = "black"),
legend.position = 'none')->; plot_cv2
現在你可以使用,來自gridExtra的grid.arrange或來自ggpubr的ggarrange>。
library(gridExtra)。
grid。 arrange(plot_cv1, plot_cv2, nrow = 1)
#or
library(ggpubr)
ggarrange(plot_cv1, plot_cv2。 nrow = 1)
兩者的輸出結果相同:
uj5u.com熱心網友回復:
我從上面Ben的建議中找到了解決這個問題的方法。首先,我們在2個因素之間做一個組合,這個組合將有6個級別。(2個基因型x3個治療)。然后,在scale_color_manual中,我們可以指定6個級別的每種顏色!
#Loading the data and creating the labels。
Genotype< - rep(c("CV1"/span>。 "CV2")。 each=3)。
治療< -rep(c("T1"。 "T2","T3")。 2)
COMBI< - c("CV1T1"。 "CV1T2","CV1T3"。 "CV2T1","CV2T2"。 "CV2T3")
RATIO<- c(0. 8,0.7, 0. 9,1.1, 1. 0,0.8)
DataA<-資料。 frame(Genotype,treatment,COMBI,RATIO)
A_labels <- data. frame(Genotype=c("CV1">。 "CV1", "CV1"), "CV1" ,
perc= c("NA"。 "NA","PASS")。 治療=c("T1"。 "T2", "T3"),
RATIO=c(1.0,/span> 0. 90, 1.0))
B_labels <- data. frame(Genotype=c("CV2">。 "CV2", "CV2"), "CV2" ,
perc= c("TEST"。 "PASS","FAIL")。 治療=c("T1"。 "T2", "T3"),
RATIO=c(1.2,/span> 1. 1, 1.1))
#GGPLOT
ggplot(data=DataA。 aes(x=treatment, y=RATIO。 fill=treatment))
geom_bar(stat="identity"/span>。 位置="dodge",寬度= 0。 7)
scale_fill_manual(values= c ("Dark gray"。 "深藍色"。 "暗紅色")
scale_y_continuous(breaks = seq(0,1。 5,0. 2),標簽=規模:: 百分比。 極限= c(0,1. 5))
geom_label(data=A_labels。 aes(x=treatment, y=RATIO, label=perc。 col=subset(DataA, 基因型=="CV1")$COMBI)。 大小=6。 fill="white")
geom_label(data=B_labels。 aes(x=treatment, y=RATIO, label=perc。 col=subset(DataA, 基因型=="CV2")$COMBI)。 大小=6。 fill="white")
scale_color_manual(values= c ("Blue"/span>。 "Red"。 "藍色","綠色","黃色"。 "Orange")
labs(x="treatment"。 y="比率(%)")
facet_wrap(~Genotype)
主題(軸。 title = element_text (face = "lain"。 尺寸= 20。 color = "black"),
axis.text. x = element_text(size= 18), axis.text.
axis.text. y = element_text(size= 18), axis.text=
axis.line = element_line(size = 0。 5, color = "black"),
legend.position = 'none')
windows(width=9。 高度=5)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qianduan/318903.html
標籤:



