2012-10-11 61 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 –