2014-05-09 34 views
0

我是R-studio的新品牌,我可以使用一些幫助。格式化大數據集情節

我正在收集加速計數據,我需要能夠以有意義的方式查看12小時的文件。

我想要做的就是模仿我發佈的圖片。每隔10萬個數據點,我希望情節分析的方式與地震分析人員對他們的數據進行觀察的方式相同。

對不起,我無法發佈圖片,因爲我沒有足夠的分數。這裏是鏈接

http://eqinfo.ucsd.edu/cacheimages/vncdumps/orbmonrtd/anza24hr_Z.gif

的數據是這樣的:

millis,x,y,z 
2210,502,533,701 
2230,499,538,702 
2240,502,535,705 
2250,500,560,699 

腳本來創建情節是這樣的

data <- read.csv("LOG_141.DAT", skip=2, header = TRUE, 
    stringsAsFactors = FALSE) 
str(data) 
plot(data$millis[1:100000], data$y[1:100000], type = "l", cex = 0.2, ylim=c(100,1000)) 
+0

請使用[此問題]上的建議提供示例數據(http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)。不知道你的數據是什麼樣的,不可能提供具體的建議 – MrFlick

+0

這有幫助嗎? – KeitherB

+0

有點。您的完整數據集有多大? –

回答

0

化妝數據:

d <- data.frame(millis=1:1e6,y=rnorm(1e6)) 
d$c <- rep(1:1e5,length.out=nrow(d)) 

這很容易編寫,但需要很長時間才能呈現。

library(ggplot2) 
ggplot(d,aes(x=millis,y=y))+facet_grid(c~.)+geom_line() 

或(也慢)

library(lattice) 
xyplot(y~millis|c,data=d,layout=c(10,1)) 

最快在基地圖形(說實話,我放棄了等待或者以上才能完成。):

par(mfrow=c(10,1),mar=c(0,4,0,1),las=1) 
for (i in 1:10) { 
    plot(y~millis,data=d[1:999999+(i-1)*1e5,],type="l", 
     axes=FALSE,ann=FALSE) 
    box() 
    axis(side=2) 
} 

請參閱?par幫助調整外邊距等等等等

您可能會考慮子採樣:如果您的屏幕(或其他輸出設備)只有幾千像素寬,並且您在屏幕寬度上繪製了100,000點,那麼大多數 都將被隱藏!

+1

中不會很好地工作,你是否運行了所有的R代碼在我的答案??我不會推薦前兩種方法 - 首先嚐試最後一種方法。如果你想在上面描述的數據中使用這個代碼,你需要用'data'代替'd'。 –

+0

謝謝。幾個tweeks,這是我所支持的。它現在工作得很好。對於(i in 0),(mfrow = c(12,1),mar = c(0,4,.5,1),oma = c(1,2,1,1),las = 1) :11){y_ millis,data =加速度計[(300000 * i + 1):(300000 * i + 300000),],type =「l」,ylim = c(400,600), axes = FALSE ,ann = FALSE) box() axis(side = 2) } – KeitherB

+0

爲什麼我會問一個有答案的問題,從而得到一個負面聲望點? – KeitherB