5

在 gnuplot 指令文件中,是否可以指示数据源文件和输出的相对路径?路径必须相对于 gnuplot 指令文件路径。

上下文 我有包含 12 到 50 条 xy 曲线的大型数据文件,我使用 PHP 脚本和 gnuplot 处理这些数据文件,以便提供漂亮的数据图形视图。这些视图是使用 gnuplot 生成的,对于每个视图,我都有一个 .csv 文件、一个 gnuplot 绘图指令文件和一个图形。

一切都很好地分类到文件夹中。通常,在文件夹中,图形位于顶层,然后在源/子文件夹中是 .csv 和 gnuplot 文件。

有时,我需要稍微更改图形。所以我编辑了 gnuplot 文件,并通过直接调用 gnuplot 再次绘制它。一切都很好,直到我将文件夹移到其他地方。我经常这样做。

4

2 回答 2

3

Yes, you can specify relative paths in the gnuplot file:

set output '../path/to/outputs/output.eps'
plot '../path/to/csv/input.csv'

works fine. If you want to specify paths as arguments to the script, I recommend a bash wrapper:

#!/bin/bash

# argument 1 is path to input
# argument 2 is path to output

gnuplot << EOF
set terminal ...
set output '$2/output'

plot '$1/input1.csv', \
     '$1/input2.csv' ...
EOF
于 2013-02-16T14:55:48.457 回答
2

我偶然发现使用loadpath来加载相对于一个的数据$HOME

set loadpath system('readlink -f ~/.gnuplot.scripts')

当然,这是针对 un*x 系统的。

于 2014-01-29T17:14:01.270 回答