java如何在使用JavaPlot时将特定命令传递给gnuplot
我正在制作一个Java应用程序,它使用gnuplot。我已经成功地在JPanel
中显示了一个图形(使用JPlot
)。但我需要以某种方式访问JavaPlot提供给gnuplot的命令,或者更确切地说,我需要显示它们并直接编辑它们。这就是我一直坚持的问题;JavaPlot对我来说太复杂了,我找不到一种方法来实现它
我曾尝试在PlotHandler
(下面的代码)的构造函数中使用GNUPlotParameters
,但它似乎不起作用。我能够通过以下方式获得一些结果:
class PlotHandler { //my own class that works with the JPlot
private String gnuplotpath;
private JavaPlot p;
PlotHandler(String path){
this.gnuplotpath=path;
/*doesn't work
GNUPlotParameters para = new GNUPlotParameters();
para.set("size 900 900");
p = new JavaPlot(para,gnuplotpath,new DefaultTerminal());
*/
//this does:
p = new JavaPlot(gnuplotpath);
p.setTitle("spectrum");
p.getAxis("x").setLabel("wave length");
p.getAxis("y").setLabel("absorbance");
}
JPlot getGraph(){
JPlot plot;
((AbstractPlot) p.getPlots().get(0)).getPlotStyle().setStyle(Style.LINES);
plot = new JPlot(p);
plot.getJavaPlot().plot();
return plot;
}
}
GUI:
...
JPlot plot = plotHandler.getGraph();
System.out.println(plot.getJavaPlot().getCommands()); //this seems to work, but I'm not sure that it would work if I somehow passed some commands thru the GNUPlotParameters.
总之,我需要一些方法,比如
JPlot.getJavaPlot.setCommands(String commands)
及
String commands = JPlot.getJavaPlot.getCommands()
(getCommands()
实际上是存在的,我只是不知道它是否按我所希望的那样工作)
共 (0) 个答案