首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >从java调用gnuplot?(ubuntu)

从java调用gnuplot?(ubuntu)
EN

Stack Overflow用户
提问于 2010-07-07 23:58:20
回答 5查看 14.8K关注 0票数 5

我不确定这是否可能,特别是因为Java通过VM运行,但是我可以从Java内部调用gnuplot吗?也许我可以让Java打开一个终端并输入

代码语言:javascript
运行
复制
gnuplot
plot ...

等?

EN

回答 5

Stack Overflow用户

回答已采纳

发布于 2010-07-08 00:05:51

使用gnujavaplot

票数 20
EN

Stack Overflow用户

发布于 2010-07-08 00:02:34

如果可以让gnuplot从命令行或标准输入(或从文件中读取)获取所有输入,并将其输出写入文件,那么使用ProcessBuilder应该没有问题。

票数 3
EN

Stack Overflow用户

发布于 2011-05-11 05:19:56

这在Debian上有效:

代码语言:javascript
运行
复制
String[] s = {"/usr/bin/gnuplot",
              "-e",
              "set term jpeg large size 800,600;set autoscale; set grid;set format y \"%0.f\";set output \"plot.jpg\";set xdata time;set timefmt \"%Y-%m-%d-%H:%M:%S\";set xlabel \"Dates\";set ylabel \"Data transferred (bytes)\";plot \""+x+"\" using 1:2 title \"Total:"+tot+"\" with linespoints;"
             };
try {
    Runtime rt = Runtime.getRuntime();
    Process proc = rt.exec(s);
    InputStream stdin = proc.getErrorStream();
    InputStreamReader isr = new InputStreamReader(stdin);
    BufferedReader br = new BufferedReader(isr);
    String line = null;
    while ((line = br.readLine()) != null)
        System.err.println("gnuplot:"+line);
    int exitVal = proc.waitFor();
    if (exitVal != 0)
        log("gnuplot Process exitValue: " + exitVal);
    proc.getInputStream().close();
    proc.getOutputStream().close();
    proc.getErrorStream().close();
} catch (Exception e) {
    System.err.println("Fail: " + e);
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3196563

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档