【问题标题】:Bash script which plots data using XMGRACE tool使用 XMGRACE 工具绘制数据的 Bash 脚本
【发布时间】:2014-06-25 14:14:47
【问题描述】:

我编写了一个 bash 脚本,它生成包含数据的文件并将它们保存到一个目录中。我希望我的脚本也使用 xmgrace 绘制这些文件。

最初我只需要一个命令行或一系列命令行来创建一个 xmgrace 文件,保存它,选择 y 和 x 轴的比例,将 y 轴设置为对数,标记 x 和 y 轴并为图表命名。

我已经尝试过以该行开头

    xmgrace filename xaxis label "Label 1" yaxis label "Label 2" PRINT TO "filename.eps" DEVICE "EPS" OP "level2" 

这会绘制数据但不会在其上放置标签或保存它并且终端返回

    Can't stat file xaxis
    Can't stat file label
    Can't stat file Label 1
    ...
    ... 

我是否还可以在此命令行中放置一个标志,以便 xmgrace 实际上不会打开文件,它只是创建并保存它。当我在 Bash 脚本中使用它时,这会好得多。

非常感谢

附言我只使用 xmgrace,因为它是我最熟悉的手动使用的绘图工具。我欢迎任何有关此任务的更合适工具的建议。

【问题讨论】:

    标签: bash xmgrace


    【解决方案1】:

    是的,可以在没有 GUI 的情况下调用 xmgrace/Grace(使用 gracebat),但是您使用的命令必须首先在脚本文件中。

    文件“script.bat”的内容:

    xaxis label "Label 1" 
    yaxis label "Label 2" 
    DEVICE "EPS" OP "level2"
    PRINT TO "plot.eps"
    PRINT
    

    现在,对于两列数据文件“data.dat”,您调用一个名为 gracebat 的姊妹可执行文件,它与 xmgrace 相同,但以批处理模式运行(没有 GUI):

    gracebat -nosafe data.dat -batch script.bat

    在哪里

    -batch <script> 告诉 Grace 寻找并执行脚本文件(not 告诉 Grace 以批处理模式运行!)。

    -nosafe 覆盖默认的安全模式,该模式应该停止文件修改。如果没有它,您会看到一条错误消息(尽管在我的情况下,绘图文件仍然被写入)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-25
      • 1970-01-01
      • 2010-09-15
      • 1970-01-01
      • 1970-01-01
      • 2011-03-19
      相关资源
      最近更新 更多