我現在正在使用org.rosuda.REngine.Rserve使用C#使用R的工具。我有一個特別的問題,當我運行在C#客戶端下面的代碼:使用REngine.Rserve時出現錯誤()錯誤
c.eval("pdf(file=\"plots.pdf\", width=11, height=8.5)");
c.eval("plot(1,2)");
錯誤occour該說
Error in plot.new():cannot open file '', reason No such file or directory
但是我檢查了文件「plots.pdf」已是通過「pdf ..」功能成功創建。在R語義中,連續的plot()將這個時間輸出到由「pdf(...)」函數打開的活動設備,即「plots.pdf」。但我很困惑,爲什麼錯誤表明文件是''。 我在Linux服務器端使用R-2.15.0和Rserve-1.7.0。 我很想看到你的回覆。 非常感謝。
我剛剛遇到問題,看起來完全一樣。只是想知道你是否有機會在這方面取得進展? – Datageek
我記得我通過重新啓動Rserve引擎並每次在「pdf(...); plot(...)」語句後調用c.eval(「dev.off()」)來解決此問題。看來這個錯誤是由於上次沒有正確關閉設備造成的。如果你仍然發現一些問題,你可以嘗試c.voidEval而不是c.eval。我發現一些r語句無法在eval函數中正確運行。希望我的回答是有幫助的。 – fishfish311