GNUPlot disappears immediately after its creation
Asked Answered
I

2

5

I have created the gnuplot, but the problem is that it disappears immediately. I tried different solutions proposed in other threads, but none of them worked. Solution 1: comment the line bf.append("quit").append(NL); in the file GNUPlotParameters.java. Solution 2: put the line gp.setPersist(true); before gp.plot();.

DataSetPlot plotdata = new DataSetPlot(Xvals);
plotdata.setTitle("");
GNUPlot gp = new GNUPlot("C:\\Program Files (x86)\\gnuplot\\bin\\pgnuplot.exe");
gp.addPlot(plotdata);
gp.plot();
gp.setPersist(true);

So, how to solve this problem?

P.S. I'm running this code on Windows 7.

Intuitionism answered 16/4, 2013 at 19:32 Comment(0)
G
1

Unfortunately this seems to be a bug in gnuplot under windows. See this bug report.

If you want this type of functionality, you have two options:

  1. use CygWin version of gnuplot
  2. save the result to a file, or use the JPlot swing component.

EDIT: There is a new version of JavaPlot which should fix this issue.

Garrik answered 4/12, 2013 at 11:4 Comment(0)
D
0

Look into the -persist option to pass to gnuplot, you could probably change the third line in your code to

GNUPlot gp = new GNUPlot("C:\\Program Files (x86)\\gnuplot\\bin\\pgnuplot.exe -persist");

or

GNUPlot gp = new GNUPlot("C:\\Program Files (x86)\\gnuplot\\bin\\pgnuplot.exe /noend");

Here is my source.

Detrition answered 16/4, 2013 at 21:54 Comment(4)
You can't do that. The initialization method does not allow parameters.Garrik
@Panayotis, do you mean that when calling gnuplot from java you cannot pass command line flags? I am not a Windows user, but that seems strange to me. I checked and there are posts (e.g. groups.google.com/forum/#!topic/comp.graphics.apps.gnuplot/…) where people are passing flags to gnuplot called in Windows.Detrition
You can pass command line flags, but not with JavaPlot. The single argument is only the filename executable. What you wrote will try to call the executable "C:\\Program Files (x86)\\gnuplot\\bin\\pgnuplot.exe /noend" which of course does not exist.Garrik
I had a similar problem as the OP (gnuplot demos immediately disappearing) and calling them with gnuplot -persist example.gnu solved the issue. Thanks!Horripilate

© 2022 - 2024 — McMap. All rights reserved.