這是哈德利指出的一個後續問題,除非我用時間戳解決問題,否則我生成的圖形將不正確。考慮到這一點,我正在努力解決我在代碼中遇到的問題。到目前爲止,我已經從我以前的問題已被回答停止使用attach()函數贊成使用dataSet.df $ variableName 我有問題從strptime時間戳中繪製圖形。我將附上我正在使用的所有代碼和從中解析數據集的XML文件(這在以前的問題中也得到了回答)。R的時間戳,Qplot和strptime
<?xml version = "1.0"?>
<Company >
<shareprice>
<timeStamp> 12:00:00.01</timeStamp>
<Price> 25.02</Price>
</shareprice>
<shareprice>
<timeStamp> 12:00:00.02</timeStamp>
<Price> 15</Price>
</shareprice>
<shareprice>
<timeStamp> 12:00:00.025</timeStamp>
<Price> 15.02</Price>
</shareprice>
<shareprice>
<timeStamp> 12:00:00.031</timeStamp>
<Price> 18.25</Price>
</shareprice>
<shareprice>
<timeStamp> 12:00:00.039</timeStamp>
<Price> 18.54</Price>
</shareprice>
<shareprice>
<timeStamp> 12:00:00.050</timeStamp>
<Price> 16.52</Price>
</shareprice>
<shareprice>
<timeStamp> 12:00:01.01</timeStamp>
<Price> 17.50</Price>
</shareprice>
</Company>
將R代碼我目前如下:
library(ggplot2)
library (XML)
test.df <- xmlToDataFrame("c:/Users/user/Desktop/shares.xml")
test.df
timeStampParsed <- strptime(as.character(test.df$timeStamp), "%H:%M:%OS")
test.df$Price <- as.numeric(as.character(test.df$Price))
summary (test.df)
mean(test.df$Price)
sd (test.df$Price)
mean(timeStampParsed)
par(mfrow=c(1,2))
plot(timeStampParsed, test.df$Price)
qplot(timeStampParsed,Price,data=test.df,geom=c("point","line"),
scale_y_continuous(limits = c(10,26)))
繪圖命令產生一個圖形,但它是不是很美觀的。在qplot命令返回以下錯誤消息:
Error in sprintf(gettext(fmt, domain = domain), ...) :
invalid type of argument[1]: 'symbol'
在獲得這一權利的興趣(和削減問題被問)有沒有教程/網站,我可以使用嗎?再次非常感謝您的幫助。
Dirk感謝您的幫助。我將XML文件更改爲不止一秒,這似乎滿足qplot函數的最低要求。 – 2010-07-14 18:30:04
我還看到使用strptime()修正時間戳的優勢,因爲哈德利是正確的,即在不修正時間戳創建錯誤圖的情況下執行圖,因爲x軸未縮放以表示時間線。 @Dirk我會看看程序附帶的R介紹,它只是我沒有選擇,只能從我做的地方開始。在回覆R腳本自動化的同時,您也回答了我的下一個問題之一。我使用了BATCH方法,因爲我沒有在該答案中找到腳本方法。有沒有控制輸出文件類型(創建圖形的.pdf文件)的方法? – 2010-07-14 21:34:42