Я делаю Java-приложение, которое использует gnuplot. Я уже успешно отобразил график в JPanel
(используя JPlot
). Но мне нужно каким-то образом получить доступ к командам, которые JavaPlot дает gnuplot, или, вернее, мне нужно отобразить их и напрямую отредактировать. И это проблема, на которой я застрял; JavaPlot - слишком сложная библиотека для меня, и я не смог найти способ сделать это.
Я пытался использовать GNUPlotParameters
в конструкторе PlotHandler
(код ниже), но, похоже, он не работает. Я смог получить некоторые результаты с:
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()
на самом деле существует, я просто не могу сказать, работает ли он так, как я хочу)