0

我有变量 M_i 和 M > M_i。我想制作一个 splot,其中使用这些变量评估我的数据文件的一列...

像这样的东西:

splot "9.90000000orbs.dat" u 1:2:(10+4*($M-$M_i))

我无法找出最后一列规范的正确语法。我该怎么做?

提前致谢。

4

2 回答 2

0

这是实现此目的的一种方法:
指定要用作第三个绘图参数的函数。

x(x) = x
splot "9.90000000orbs.dat" u 1:2:x(10+4*(M-M_i))

请注意,您必须分别丢弃$之前MM_i。现在,如果(10+4*(M-M_i))=14,该函数x(x)将确保您绘制x(14)第 14 列。

它使用一个简单的测试用例和 gnuplot 4.6 对我有用

于 2013-07-11T12:42:12.347 回答
0

你的问题不够清楚。假设您要在第 3 列的数据大于变量 m => 时绘制第 4 列

if (!exist("m")){m=14}
splot "9.90000000orbs.dat" u 1:2:($3<m ? $3: $4)

或给出您的文件的两行示例和更多解释。

您可以使用 bash 从 bash 调用:

$> gnuplot file.plt -e "m=$M"
于 2022-02-11T15:29:54.320 回答