我正在使用xmgrace在共享的axed上绘制几个图,来自两列数据文件,如下所示:
@ title "RMSD"
@ xaxis label "Time (ns)"
@ yaxis label "RMSD (nm)"
@TYPE xy
@ subtitle "C-alpha after lsq fit to C-alpha"
1.7125001 0.0005074
1.7225001 0.0635904
1.7325001 0.0747008
1.7425001 0.0707590
1.7525001 0.0821623
1.7625000 0.0842335
1.7725000 0.0929994
1.7825000 0.0938834
1.7925001 0.1014052
1.8025001 0.1107717
1.8125001 0.1106072
1.8225001 0.1032858
1.8325001 0.0967231
1.8425001 0.1072746
所以,我调用命令向我展示GUI上的所有图形
xmgrace 1.xvg rmsd_amber_2.xvg rmsd_3.xvg
是否可以使用xmgrace GUI中的选项自动使用文件名作为图例的标签?到目前为止,xmgrace会自动为每个数据系列使用不同的线条颜色,但不会将文件名显示为数据标签。
如果无法做到这一点,请向我推荐另一个适用于Linux的GUI软件,该软件能够从终端打开xvg文件以实现其可视化"即时#34;。
谢谢!
答案 0 :(得分:0)
Xmgrace没有做你想做的事
xmgrace帮助(通过在终端处调用xmgrace --help
显示)显示没有命令行标志来指定数据集图例标题。如果是这种情况,您可能会想出一些bash命令来解析数据文件中的标题。
但还有另一种方式
作为替代方案,您可以加载包含正确标题的参数文件。如果从xmgrace GUI中保存任何参数文件并将其加载到文本编辑器中,您将看到几乎可以控制Plot,Graph和Set外观属性的每个方面。
然而,并非全部都需要;我们可以删除几乎所有这些信息,只保留与我们的数据集图例标题相关的行(其他所有内容都将采用默认值)。
<强>解决方案强>
最小参数文件&#34; template.par&#34;可能只包含以下四行:
with g0
s0 legend "title0"
s1 legend "title1"
s2 legend "title2"
在你的情况下&#34; title1&#34;将是&#34; RMSD&#34;。
然后,您可以使用xmgrace -param template.par 1.xvg rmsd_amber_2.xvg rmsd_3.xvg
创建图表。
自动化
到目前为止一切顺利,但您想通过解析所选的.xvg文件来自动创建template.par
。您可以使用bash脚本甚至bash one-liner以任意数量的方式实现此目的。