使用JavaPlot时如何将特定命令传递给gnuplot

时间:2019-01-21 20:17:20

标签: java gnuplot javaplot

我正在制作一个使用gnuplot的Java应用程序。我已经在JPanel中成功使用了分布式图表(使用JPlot)。但是我需要以某种方式访问​​JavaPlot提供给gnuplot的命令,或者我需要显示它们并直接对其进行编辑。这就是我遇到的问题,JavaPlot对我来说太复杂了,无法找到一种方法来实现。

我尝试在JavaPlot的构造函数中使用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(字符串命令) 和

字符串命令= JPlot.getJavaPlot.getCommands()

(getCommands()实际上存在,我只是无法确定是否可以按我的意愿工作)

0 个答案:

没有答案