gnuplot 条件绘图与 if
gnuplot conditional plotting with if
我有一个包含两列的数据文件
10 0.5
20 0.8
25 0.3
15 0.6
如果第一列小于或等于 20,我想绘制第二列。问题是,我想跳过第一列大于 20 的行,但是 gnuplot 强制我在条件部分。
命令是
plot 'data.txt' u (<=20?:0) with points
如您所见,我必须指定将点归零。我不想要那个!我想跳过....
要在 gnuplot 中跳过一个点,您必须给它一个无效值,例如 1/0
:
plot 'data.txt' u 1:( <= 20 ? : 1/0) with points
对于某些绘图样式,无效值的存在值得引起注意。如果应该连接其余的点,例如对于线条,线条在无效点处中断。
从 gnuplot 版本 5.0.6 开始,可以使用 set datafile missing NaN
将无效点视为缺失点。过滤后的数据就好像无效点不存在一样。有关工作示例,请参阅 。
我有一个包含两列的数据文件
10 0.5
20 0.8
25 0.3
15 0.6
如果第一列小于或等于 20,我想绘制第二列。问题是,我想跳过第一列大于 20 的行,但是 gnuplot 强制我在条件部分。
命令是
plot 'data.txt' u (<=20?:0) with points
如您所见,我必须指定将点归零。我不想要那个!我想跳过....
要在 gnuplot 中跳过一个点,您必须给它一个无效值,例如 1/0
:
plot 'data.txt' u 1:( <= 20 ? : 1/0) with points
对于某些绘图样式,无效值的存在值得引起注意。如果应该连接其余的点,例如对于线条,线条在无效点处中断。
从 gnuplot 版本 5.0.6 开始,可以使用 set datafile missing NaN
将无效点视为缺失点。过滤后的数据就好像无效点不存在一样。有关工作示例,请参阅