我想构建堆积的条形图,其中x轴表示基因组(或仅是生物体)的数量,y轴表示基因簇的数量,它们出现在确切的基因组数量中。据我所知,这些基因来自哪个生物,我希望每个条形图都能显示出每个基因组对建立这个条形图的影响。
我的数据示例:
df = data.frame (genomes_involed = c(1,2,2,3,3,1), number_of_genes = c(1,3,2,3,4,2), genome1_genes = c("A","B","*", "B", "A,M","*"), genome2_genes = c("*","C,B","E", "D", "N", "*"), genome3_genes = c("*","*", "L", "H", "O", "P,A"))
位置:
行是基因簇;
1)第一栏显示每个基因簇中涉及的基因组数量;
2)第二列代表簇中基因的数量;
3)第3-5栏代表来自不同基因组的基因的具体名称;
“ *”表明该基因组的簇中没有基因。
它或多或少具有特定的组织,这就是为什么我不确定如何正确使用它的原因,例如在以下ggplot函数中:
ggplot(df, aes(x = factor(Time), y = Value, fill = factor(Type))) + geom_bar(stat="identity", position = "stack")
结果,我想在x轴上获得3条,代表1,2个或全部3个基因组的数量; y轴代表在1个,2个或所有3个基因组中发现的簇数;并显示每个基因组对构建每个混凝土钢筋的影响。
答案 0 :(得分:0)
我有点困惑,但是我想你是说有多种生物,每种生物都有1、2或3个基因组。你想要在x轴上有三个条形-一个代表基因组1,一个对于基因组2,一个对于基因组3-堆栈将显示多少个具有基因组1的生物具有1个基因簇,多少个2基因簇,以及多少个具有3个基因簇(对于其他每个基因组,依此类推)?
df = data.frame (genomes_envolved = c(1,2,2,3,3,1), number_of_genes = c(1,3,2,3,3,2), genome1_genes = c("A","B","*", "B", "A,M","*"), genome2_genes = c("*","C,B","E", "D", "N", "*"), genome3_genes = c("*","*", "L", "H", "O", "P"))
df[df=="*"]<-NA #I changed asterisk to NA
df$genomes_envolved<-as.factor(df$genomes_envolved)
df$number_of_genes<-as.factor(df$number_of_genes)
ggplot(data = df, aes(x = genomes_envolved,fill=number_of_genes)) + geom_bar()