我正在尝试创建多个共享相同图例的图形。
我发现了多种方法可以组合多个图形,并且ggarrange
似乎可以为所有本应唯一的对象创建一个共享图例。
但是我在绘制图形时遇到了一些问题,因为一些图形没有相同的门(定义图例颜色),但是我希望它们在所有图形中都具有相同的颜色,因此合并后的图例将具有正确的颜色。
对于仅一张图,我会像下面一样手动为标签分配颜色
labs<-c("Arthropoda"="#FF66CC"
,"Cercozoa"="#FF6000")
并添加scale_fill_manual(values=labs)
进行绘图,这似乎可行
然后我对其进行了修改,以使它们的某些部分变为斜体。
labsPhylum <-c('expression(paste(italic("Arthropoda")))'="#CC0000"
,'expression(paste(italic("Cercozoa")))'= "#FF6000"
,'expression (paste("unknown", ~italic("Eukaryota")))'= "#990000")`
但是,当我使用ggplot
和scale_color_manual()
使用labsPhylum创建图形时,我认为该图形应为斜体并上色,我在此警告的情况下绘制了一个空图,因此这里有些重要的内容我无法理解。
ggplot(data=sigtab_dil, aes(x=Species, y=log2FoldChange, color=Phylum))+
geom_point(size=2) +
scale_color_manual(values=labsPhylum)
Warning message:
Removed 9 rows containing missing values (geom_point).
有人可以帮我弄清楚我要去哪里错吗? 谢谢
答案 0 :(得分:0)
回答了我自己的问题
我意识到我必须为中断,标签和值创建单独的向量,而不是将它们组合在一起。
简而言之
colsPhylum <-c("Arthropoda"="#CC0000"
,"Cercozoa"= "#FF6000"
,"Chlorophyta"= "#CC9900"
labsPhylum <-c(expression(paste(italic("Arthropoda")))
,expression(paste(italic("Cercozoa")))
,expression(paste(italic("Chlorophyta ")))
breaksPhylum <-c("Arthropoda", "Cercozoa","Chlorophyta", "Choanozoa"
,"Ciliophora"
,"Cryptista"