有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

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) 个答案