使用 gnuplot 从同一文件绘制 2 个数据集,不更改 data.dat 格式

Plot 2 data sets from the same file using gnuplot, without changing data.dat format

我正在使用以下 data.dat 文件:

3 1387.0967741935483 1 
6 1639.8976592916093 1 
9 2134.0472946621827 1 
3 870.98734610443798 0 
6 994.90178561297367 0 
9 1034.89761876391273 0

我希望使用第 3 列作为数据集指示器将此数据绘制到线点图上。因此,第 3 列中带有 1 的所有行都将成为 1 个数据集的一部分,所有带有 0 的行将成为第二个数据集的一部分。

我知道这可以通过更改数据文件的格式来完成,但这不可能。

告诉 Gnuplot 在 3 列中查找 1 然后打印,执行相同的操作但为第二个数据集指定 0

plot "test.dat" u 1:2:3:(stringcolumn(3) eq '1' ?  : 1/0), \
"test.dat" u 1:2:3:(stringcolumn(3) eq '0' ?  : 1/0)