1

我无法通过 JavaPlot 传递 GNUplot 参数。我已经能够将 JavaPlot 用于几个不同的图表,但我似乎无法让 JavaPlot 激活 GNUPlot 中的“极坐标”设置。

更改为极坐标模式的 GNUPlot 命令只是“设置极坐标”。我知道我可能需要给 JavaPlot 的某个 PropertyHolder 对象一个 .set("polar") 命令。但是哪个对象?

直观地说,我会尝试(在创建一个名为 png 的图像终端之后):

    GNUPlotParameters params = new GNUPlotParameters();
    params.set("polar");
    GNUPlot p = new GNUPlot(params);
    p.setTerminal(png);
    FunctionPlot func = new FunctionPlot("sin(x)");
    p.addPlot(func);

但这不起作用 - addPlot() 上的构建失败。我也尝试设置 GNUPlot 对象本身,但 GNUPlot.set() 需要一个 ("keyword","value") 参数集,而我想发送给 GNUPlot 的命令只是“设置极坐标”。但是这样做:

    p.set("polar","");

也会导致构建失败。任何人都知道如何设置特定的 GNUPlot 参数(例如极坐标)?

4

2 回答 2

2

可能您polar正确设置了选项,但是您必须使用t作为变量来绘制函数。在交互式 gnuplot 会话中,您必须使用

set polar
plot sin(t)
于 2014-08-10T23:25:20.747 回答
-1

事实证明,设置polar关键字应该作为绘图本身的属性发生,并且变量确实需要是t. 为了完整起见,这是我使它工作所需的(有两个示例函数,一个预定义为函数图):

    JavaPlot p = new JavaPlot();
    p.setTerminal(png);
    p.set("polar","");
    FunctionPlot func = new FunctionPlot("cos(2*t)");
    p.addPlot(func);
    p.addPlot("sin(t)");
    p.setPersist(false);
    p.plot();
于 2014-08-13T16:50:45.917 回答