2013-04-12 64 views
1

我正在嘗試創建兩個變量的分面圖,即km0處的密度和km22(聲壓級)處的SPL。兩者的時間戳不一致,因爲測量間隔22公里。這裏的想法是追蹤在km22觀看SPL水平的水批(Density〜1)。刻面時間序列數據

This是我正在使用的數據幀。

正如你可以看到有5個變量。這是我將數據導入後R至今:

# Melting the data 
mydata2 <- melt(mydata, id = c('TIMESTAMP')) 

# Create the faceted plot 
ggplot(mydata2, aes(TIMESTAMP, value)) + geom_point() + facet_grid(variable~., scale = "free_y") 

其繪出這樣的:

enter image description here

我的問題是:

  1. 我只能繪製從原始數據幀(mydata)變量DENSITY和SPL?

  2. 如果我必須創建一個新的熔化數據框(mydata2),我怎樣才能繪製變量DENSITY和SPL(不刪除其他變量)?

我希望我已經說清楚了,如果不是,請讓我知道我該如何改進我的問題。

謝謝你的幫助。

+0

你可以將'measure.vars'傳遞給'melt'。請參閱'?melt.data.frame'。 – Justin

回答

2

您可以使用ggplot()中的subset()調用您需要繪製的子集數據。在你的情況下:

ggplot(data=subset(mydata2,variable %in% c("DENSITY","SPL")), aes(TIMESTAMP, value)) + 
    geom_point() + facet_grid(variable~., scale = "free_y") 
+0

謝謝!它運行良好,但是我必須將數據解碼嗎? – amzu

+0

您不必更改mydata2(它與您的代碼中的融化數據框相同)。 –

+0

@Didziz Elferts我可以僅使用mydata數據框創建一個類似的情節嗎? – amzu