2014-09-19 68 views
-1

我有一個名爲June的數據框,名爲Hour的列包含; 0:00,0:15,0:30,0:45,1:00,1:15,直到23:45,然後重複30天。另一個名爲Diff_H1H2的列包含數字數據,例如; 0.0017,0.0067,-0.019,-0.24等。你可以爲同一個x座標繪製多個y點嗎?

我只想繪製數據並嘗試。

plot(June$Hour, June$Diff_H1H2) 

這是錯誤信息。

Error in plot.window(...) : need finite 'xlim' values 
In addition: Warning messages: 
1: In xy.coords(x, y, xlabel, ylabel, log) : NAs introduced by coercion 
2: In min(x) : no non-missing arguments to min; returning Inf 
3: In max(x) : no non-missing arguments to max; returning -Inf 

而且這些都是類:

> class(June$Hour) 
[1] "character" 
> class(June$Diff_H1H2) 
[1] "numeric" 
+0

是'六月$ Hour'格式化爲角色?這會給你的錯誤。以日期/時間格式格式化「June $ Hour」,然後您就可以繪製它。 – eipi10 2014-09-19 19:59:35

+1

如果您發佈數據樣本以便其他人可以在特定問題的背景下提出解決方案,那麼人們可以更輕鬆地幫助您。例如,要發佈20個隨機選擇的數據行,將'dput(6月[sample(1:nrow(June),20),])'的輸出粘貼到您的問題中。 – eipi10 2014-09-19 20:26:27

回答

0

我做了一些假數據給你:

Hour <- rep(c('0:15', '0:30', '0:45'), 3) 
Hour <- as.numeric(gsub(':', '', Hour)) 
Diff_H1H2 <- runif(9, min = 0, max = 1) 
June <- data.frame(Hour, Diff_H1H2) 

plot(June$Hour, June$Diff_H1H2, xaxp = c(15, 45, 2)) 

numeric image

要將數據轉換爲日期/時間格式你可以做下面的代替as.numeric行:

Hour <- paste0("2010-01-01", " ", Hour, ":00") 
Hour <- as.POSIXct(Hour) 

當與下圖中的代碼會導致其他幾行運行:

time image

相關問題