2012-10-11 54 views
1

我一直试图在堆积条形图/面积图的组合上重新创建此post。尽管如此,我仍然有一些缺失值的问题。使用ggplot2更正堆叠区域图中的缺失值

这里是我的数据:https://www.dropbox.com/sh/pnkspwnn1qslm6u/JapTKCwqMS

我跑什么;

wa=read.table('wa_class.txt', sep="", header=F, na.string="0") 
    names(wa)=c("Class","Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec") 
    wam=melt(wa) 
wam$variablen=as.numeric(wam$variable) 

它的样子

> head(wam) 
        Class variable  value variablen 
1   Actinobacteria  Jan 38.115163   1 
2   Flavobacteria  Jan  NA   1 
3  Sphingobacteria  Jan 3.640469   1 
4 Alphaproteobacteria  Jan 13.631663   1 
5 Betaproteobacteria_b28  Jan 3.718671   1 
6  Betaproteobacteria  Jan 14.732354   1 

ggplot(na.omit(wam[,c("Class","value","variablen")]), aes(wam,x=variablen, y=value, fill=Class)) + geom_area(color="black") + geom_linerange(aes(ymax=value), position="stack") + scale_x_continuous(breaks=1:max(wam$variablen)) + labs(title="Water", x="Month", y="Relative abundance (%)") 

...所以我试图纠正与使用na.omit的变量我情节缺失值。但是,我在图中获得了层,例如互相重叠(请参见保管箱文件夹)。

我发现这篇文章(见保管箱文件夹),它纠正了,但似乎只有一个。由于数据链接已经死亡,我无法复制它。

任何帮助真的很感谢!

谢谢,

+0

我不知道为什么你'Mar'在脚本开始。因此,这些数据与您在此发布的内容不完全相同。 –

+0

哦,忘了在帖子中改变它。它当然应该从Jan开始,等等......现在纠正了。谢谢! –

回答

0

一种解决方案是读零为零值。如果你不使用na.string="0",情节看起来就像这样:

enter image description here

+0

谢谢!当然,为什么我没有想到...? :P –