2016-11-30 12 views
2

2番目の列が私のX値で、15番目の列が私のY値であるファイルの統計を計算しています。これは、x-rangeがファイル内のすべてのデータをカバーする限り正常に動作します。Gnuplot:複数列統計の変数

stats '$LOGFILE' using 15 name 'rate_Y_' 
print rate_Y_max 

これを出力:

* FILE: 
    Records:  74 
    Out of range: 0 
    Invalid:  0 
    Blank:   0 
    Data Blocks: 1 

* COLUMN: 
    Mean:  26391.9815 
    Std Dev: 37555.9366 
    Sum:  1.95301e+06 
    Sum Sq.: 1.55917e+11 

    Minimum: 2793.2603 [ 1] 
    Maximum: 142755.0813 [73] 
    Quartile: 4586.2274 
    Median: 10359.6168 
    Quartile: 27017.6600 

142755.081306 

しかし、私はX-範囲を制限したい場合、私は

set xrange [40:400] 
stats '$LOGFILE' using 2:15 name 'rate_Y_' 

私のX-列を定義し、二次元の統計値を取得する必要があります私の可変rate_Y_maxにはもうアクセスできません:

* FILE: 
    Records:  7 
    Out of range: 67 
    Invalid:  0 
    Blank:  0 
    Data Blocks: 1 

* COLUMNS: 
    Mean:  182.1429  111416.6321 
    Std Dev:  118.5585  14491.4560 
    Sum:  1275.0000  779916.4248 
    Sum Sq.: 330625.0000  8.83657e+10 

    Minimum:  50.0000 [6] 83292.6937 [0] 
    Maximum:  400.0000 [0] 124953.1493 [5] 
    Quartile:  75.0000  99960.3747 
    Median:  150.0000  111045.6078 
    Quartile: 300.0000  124912.0550 

    Linear Model: y = -120 x + 1.333e+05 
    Correlation: r = -0.9817 
    Sum xy:  1.302e+08 

      line 0: undefined variable: rate_Y_max 

質問:2次元統計変数にアクセスするにはどうすればよいですか?ドキュメントから

答えて

1

2列は、単一のstatsコマンドが共同で分析された場合は、 接尾辞「_x」または「_y」は、各変数名に付加されます。私。 STATS_min_x は、最初の列にある最小値です。STATS_min_yは、2番目の列にある最小値である です。

ので

rate_Y_max_y 

は、あなたが探しているものです。

あなたは、おそらく使用する必要があります。

stats '$LOGFILE' using 2:15 name 'rate' 
print rate_max_y 
1

使用show variables rate_はあなたがstats ... name 'rate'の呼び出しによって生成されたすべての変数を参照してください。

set xrange [0:100] 
stats '+' using 1:($1**2) name 'rate' 

Variables beginning with rate_: 
... 
rate_min_x = 0.0 
rate_max_x = 100.0 
... 
rate_min_y = 0.0 
rate_max_y = 10000.0 
... 
を印刷した show variables rate_を呼び出す
関連する問題