• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:JAVAとGnuplot)

JavaとGnuplot: グラフのプロットを行う方法

このQ&Aのポイント
  • JavaからGnuplotを利用してグラフのプロットを行いたいが、うまくいかない。
  • JavaでGnuplotを起動し、グラフのプロットを行いたいが、プロットの命令が伝わらない。
  • JavaとGnuplotを連携してグラフを描画する方法がうまくいかない。

質問者が選んだベストアンサー

  • ベストアンサー
  • salsberry
  • ベストアンサー率69% (495/711)
回答No.2

pw.close()を実行した時点でgnuplotは終了します。 gnuplotのプロット先が画像ファイルならばそれで問題ないでしょうが、画面に描画する場合にはgnuplotが終了するとグラフのウィンドウがすぐ消えてしまうと思います。 グラフのウィンドウをしばらく眺めていたい場合には、pw.close()を実行する前に時間稼ぎをする必要があります。ごく手抜きな方法としては、Thread.sleep()を使うとか。 あと、念のためpw.println()の後にpw.flush()を入れておくといいかも。

mmmmmmkn
質問者

お礼

ありがとうございます。 pw.flush()とThread.sleep()を入れて、しっかりと起動&グラフの描写ができました。 本当に助かりました。 あと、もうひとつ原因があって、「wgnuplot」ではなく、 パイプ用の「pgnuplot」を使うべきだったようです。 ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (1)

  • salsberry
  • ベストアンサー率69% (495/711)
回答No.1

Windowsでは試していませんが、 pw.print(gnuplot_cmd);のところはpw.println(gnuplot_cmd);とすべきではないでしょうか。 また、gnuplotのプロセスがすぐに終了してしまわないように工夫する必要があると思います。

mmmmmmkn
質問者

お礼

回答ありがとうございます! 確かに[println]でないとダメでした。 ご指摘ありがとうございます。 >>gnuplotのプロセスがすぐに終了してしまわないように工夫する必要がある とは具体的にどのようなことが考えられるんでしょうか? たびたびすみません。

すると、全ての回答が全文表示されます。