首页 > 解决方案 > 使用范围时,stats 命令不返回预期值

问题描述

stats使用范围时,我对命令有一些奇怪的行为。考虑以下简单示例。

$Data<<EOD
 1    10
 2    20
 3    30
 4    40
 5    50
 6    60
 7    70
 8    80
 9    90
10   100
EOD

stats [1:5] $Data u 1   nooutput 
print STATS_records # Result: 10; Expected: 5

stats [1:5] $Data u 1:2 nooutput
print STATS_records # It works fine

为什么第一个stats命令不返回预期值?这会影响所有stats结果。它是一个错误吗?我错过了什么吗?我正在使用version 5.2 patchlevel 8.

标签: gnuplot

解决方案


我试图解释这种行为:

如果你这样做

stats [1:5] $Data u 1:2 nooutput

1对应x,列2对应y[1:5]限制从x1 到 5,因此有 5 条记录。

如果你这样做

stats [1:5] $Data u 1 nooutput

1是“种类” y,伪列是“0种类” x,但是,您限制x但不是伪列0,因此有 10 条记录。

所以,如果你这样做

stats [1:5] $Data u 1:1 nooutput

您将在 column 上获得预期的结果和预期的统计信息1

查看所有STATS值类型show var STATS

但我只是在猜测......我敢肯定@Ethan 可以说出来。


推荐阅读