I am trying to plot the average of every two rows. So gnuplot should take the first two rows, add them and then divide the result by two. Repeat the same thing on rows 3 and 4 etc..
So output of
10
20
30
40
would be a graph with points at
15
35
Any suggestions would be very welcome, thanks!
答案 0 :(得分:1)
plot n=0, dataf using 0:(n==0 ? (a=$1, n=1, NaN) : (n=0, ($1+a)/2))
标志变量“n”在每个点从0变为1,如果为零,则将当前值保存为“a”并返回NaN,如果为1,则返回当前值的平均值归还。
检查“帮助三元运算符”。
数学表达式中的逗号表示“连续执行此操作并仅返回最后一部分的结果”,即“串行评估”。
图中的第一部分(n = 0)实际上并未绘制。它只是确保n总是正确地初始化以进行重新绘图,例如放大你的情节时。