gnuplot - 使用错误栏和logscale' d x轴

时间:2016-03-09 13:17:30

标签: gnuplot median errorbar

所以我有一些格式的数据文件

x y ymin ymax

我正在用yerrorbars进行策划。

现在,我如何才能最好地将y值的中位数添加到整个x范围内的情节中?

更新

我还在logscale中绘制了x轴,似乎阻止使用STATS

1 个答案:

答案 0 :(得分:1)

假设您的数据如下所示:

1 8 6 9
2 6 5 7
3 5 4 8
4 6 5 8

我们可以使用stats命令查找中位数。该用法类似于plot命令。在这里,我们只需要对第二列进行分析,因此我们只需指定第二列:

stats datafile u 2 nooutput

nooutput 选项告诉命令不要打印结果。如果我们希望看到完整的分析,我们只是省略该规范。默认情况下,stats命令将其结果存储在 STATS _ * 形式的变量中。如果需要,我们可以使用不同的前缀。有关详细信息,请参阅help stats

此时,我们有一个变量 STATS_median ,它存储y值的中值(样本数据为6)。我们现在可以通过两种方式之一将中位数添加到图表中。首先,我们可以简单地将绘图规范添加到现有的绘图命令:

plot datafile u 1:2:3:4 with yerrorbars, STATS_median

enter image description here

或者我们可以使用set arrow命令添加一行,然后只绘制yerrorbars:

set arrow 1 from graph 0, first STATS_median to graph 1, first STATS_median nohead
plot datafile u 1:2:3:4 with yerrorbars

enter image description here

这里我们以图形为单位给出x坐标,其范围从0(左侧)到1(右侧),第一坐标系中的y坐标对应于y1轴。指定nohead表示不绘制箭头。紧跟在set arrow之后的1将此箭头标记为箭头1,以便我们以后可以轻松更改或删除它。

其他选项可供选择。有关详细信息,请参阅help arrow