[英]Limit the color variation in R using scale_color_grey
在開始之前,請允許我解釋一下我的圖:我有兩個基因型( WTB和whd ),每個都有兩個條件( 0和7 ),所以我有四行。
現在,我想繪制一個圖,其中每個變量及其條件都使用相同的顏色。 帶有wdd的東西將是黑色的 ,帶有WTB的東西將是灰色的 。
我設法用實線/虛線正確制作了圖形,但是我在着色方面遇到了麻煩。 我只能使其具有灰色漸變。 是否有scale_color_grey
參數來幫助我?
這是我的代碼(為了便於閱讀,我取出了一部分):
ggplot(data=df4, aes(x=Day, y=Remain, group=Condition, shape=Condition, colour=Condition) +
theme_bw() +
geom_line(aes(linetype=Condition), size=1) +
geom_point(size=0, fill="#FFFFFF") +
scale_linetype_manual(name="Genotype",
values=c("solid", "dashed", "solid", "dashed")) +
scale_shape_manual(name="Genotype", values=c(1,19,1,19)) +
scale_color_grey(name="Genotype")
我認為這段代碼應該產生您想要的情節。 但是,如果沒有確切的數據集,則必須生成模擬數據。
## Generate dummy data and load library
library(ggplot2)
df4 = data.frame(Remain = rep(0:1, times = 4),
Day = rep(1:4, each = 2),
Genotype = rep(c("wtb", "whd"), each = 4),
Condition = rep(c("0", "7"), times = 4 ))
接下來,我創建了一個分組變量:
df4$both = paste0(df4$Genotype, df4$Condition)
最后,我繪制並保存了該圖:
example <- ggplot(data=df4, aes(x=Day, y=Remain,
group=both,
color = Genotype,
linetype = Condition)) +
geom_line() +
scale_color_manual(values = c("grey50", "black")) +
scale_linetype_manual(values = c("solid", "dashed")) +
theme_bw()
ggsave("example.jpg", example)
從您的代碼來看,為什么要包含geom_point
。 另外,如果您只想要一個子傳奇,而不是兩個,那么這個SO問題將提供有關如何執行該子傳奇的詳細信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.