gnuplot缺少表达式评估数据

时间:2011-09-29 15:55:13

标签: gnuplot

我想在gnuplot中使用带有表达式评估的plot命令,即

plot "-" using ($1):($2) with lines
1 10
2 20
3 ?
4 40
5 50
e

但我希望它忽略丢失的数据“?”以这种方式连接线(并且不会在2到4之间断开) 我试过set datafile missing "?", 但与在线帮助协议,它不连接线。以下是,但我不能使用表达式评估:

plot "-" using 1:2 with lines
1 10
2 20
3 ?
4 40
5 50
e

如何连接线的任何想法都使用表达式评估?

1 个答案:

答案 0 :(得分:2)

两列数据

如果您设置了数据文件Data.csv

1 10
2 20
3 ?
4 40
5 50

您可以使用

使用连接线绘制数据
plot '<grep -v "?" Data.csv' u ($1):($2) w lp

两个以上的列数据

对于两列以上,您可以使用 awk 使用数据文件 Data.csv

1 10 1
2 20 2
3 ?  3
4 40 ?
5 50 5

你可以在每个情节的数据文件上运行一个脚本,如下所示:

plot "<awk '{if($2 != \"?\") print}' Data.csv" u ($1):($2) w lp, \
     "<awk '{if($3 != \"?\") print}' Data.csv" u ($1):($3) w lp

可以找到关于gnuplot中脚本的参考here awk 用户手册here