1

私の元のスクリプトはこれよりもはるかに洗練されていましたが、このスクリプトを機能させることさえできませんrails c

これが私が試したことですが、公平を期すために、例が何であるかは問題ではありません。グラフィック生成プロセスが開始されると、機能が壊れているように見えます。

からrails c

R.eval("numbers <- c(12,34,56,20,44,65)")
R.eval("png('sample.png')")
R.eval("plot(numbers)")
R.eval("dev.off()")
#nothing happens

からirb

R.eval("numbers <- c(12,34,56,20,44,65)")
R.eval("png('sample.png')")
R.eval("plot(numbers)")
R.eval("dev.off()")
#action!

たとえば、Ruby irb のように、Rails の外側では、すべてがうまく機能しています。これは Rails 環境だけの問題です

4

1 に答える 1

5

ファイルを保存する app/assets パスを指定します。

require 'rinruby'

R.image_path = Rails.root.join("app", "assets", "sample.png").to_s
R.eval("numbers <- c(12,34,56,20,44,65)")
R.eval("png(filename=image_path)")
R.eval("plot(numbers)")
R.eval("dev.off()")

png は app/assets ディレクトリに表示され、他の画像と同様に Rails ビューで使用できます。

<%= image_tag 'sample.png' %>
于 2013-04-10T21:04:32.073 に答える