63942


Rをjava上で使いたかったのでJRIを用いることでできるようにしました。  
R上では正規分布のグラフは以下のようにすることで書くことができます。

[code]

    curve(dnorm(x,0,1),-4,4)
    
[/code]

これをJava上でJRIを使って実行するのにはどうすればよろしいのでしょうか？  
参考になるサイト等もあれば教えていただきたいです


CC BY-SA 4.0
2020-03-17T13:21:40.830
63939
2020-03-17T15:34:57.667
36217
question
java r
JRIを使って正規分布を描く


とりあえず、画像に保存する方法。必要だったらこの画像を取り出してJFrameにでも貼ってください。

[code]

        engine.eval("png('curve.png', 640, 480)");
        engine.eval("curve(dnorm(x,0,1),-4,4)");
        engine.eval("dev.off()");
        engine.end()
    
[/code]

[![生成した画像です](https://i.stack.imgur.com/bt5wZ.png)](https://i.stack.imgur.com/bt5wZ.png)

コメントで聞かれたので追加、org.rosuda.javaGD.GDInterfaceを実装したクラスをJRIに渡すことで、いい感じに描画するらしい。

[code]

        engine.eval( "Sys.setenv('JAVAGD_CLASS_NAME'='rinterface/RWindow')" )
        engine.eval( "library(JavaGD)" )
        engine.eval( "JavaGD(width=1000, height=600, ps=12)" )
    
[/code]

こんな風に。[詳細はここを参照。scalaだけど。。](https://pastebin.com/b2FAV6X4)  
基本Scalaでできることは同じ方法でJavaでもできますよね。


CC BY-SA 4.0
2020-03-17T13:52:47.977
63942
2020-03-17T15:34:57.667
2020-06-17T08:14:45.997
-1
10174
63939
answer