仅供记录:对于gnuplot 4.6,Christoph的答案肯定是一个不错的选择。
然而,在OP提问时,gnuplot 5.0.0已经发布。
gnuplot 5.0.0(2015年1月)具有定义多个数据文件分隔符的选项,请查看help datafile separator
。有了这个,任务就简化为:
脚本:
reset session
$Data <<EOD
1 (15, 3): dX: -1.619, dY: 3.315, dXSc: 0.981, dYSc: 0.993
2 ( 4,16): dX: -0.540, dY: -0.540, dXSc: 0.992, dYSc: 0.977
3 ( 1.5,10.5): dX: -0.540, dY: -0.540, dXSc: 0.992, dYSc: 0.977
EOD
set datafile separator "(,)"
plot $Data u 2:3 w lp pt 7 lc "red"
结果:
![enter image description here](https://istack.dev59.com/3u0AJ.webp)
添加:
实际上,你也可以设置四个分隔符,即"(,):"
,并将你的表格拆分后写入一个新的“干净”表格$DataNew
中。你必须小心选择哪些列,在这里选择的是1:2:3:6:8:10:12
。
脚本:
reset session
$Data <<EOD
1 (15, 3): dX: -1.619, dY: 3.315, dXSc: 0.981, dYSc: 0.993
2 ( 4,16): dX: -0.540, dY: -0.540, dXSc: 0.992, dYSc: 0.977
3 ( 1.5,10.5): dX: -0.540, dY: -0.540, dXSc: 0.992, dYSc: 0.977
EOD
set datafile separator "(,):"
set table $DataNew
plot $Data u 1:2:3:6:8:10:12 w table
unset table
set datafile separator
print $DataNew
结果:
$DataNew
1 15 3 -1.619 3.315 0.981 0.993
2 4 16 -0.54 -0.54 0.992 0.977
3 1.5 10.5 -0.54 -0.54 0.992 0.977
plot '< python script.py data.dat'
。 - Christoph