Gnuplot 多文件的相关系数

Gnuplot 多文件的相关系数,gnuplot,correlation,Gnuplot,Correlation,我正在尝试从多个数据文件中绘制散点图。 我想得到一个线性拟合到绘图中,我想把相关系数写到绘图中。 我想对这些数据文件中的某些行执行此操作。 这是我的线性拟合: fit [0:1] [0:1000] f(x) '< for i in data_1.csv data_2 data_3.csv \ data_4.csv data_5.csv; do cat "$i"; echo; done' every ::121::361 using 5:27 via a,b 一些更新: 这是适合我的输出

我正在尝试从多个数据文件中绘制散点图。 我想得到一个线性拟合到绘图中,我想把相关系数写到绘图中。 我想对这些数据文件中的某些行执行此操作。 这是我的线性拟合:

fit [0:1] [0:1000] f(x) '< for i in data_1.csv data_2 data_3.csv \
data_4.csv data_5.csv; do cat "$i"; echo; done' every ::121::361 using 5:27 via a,b
一些更新:

这是适合我的输出

Final set of parameters            Asymptotic Standard Error
=======================            ==========================
a               = -410.518         +/- 32.5         (7.918%)
b               = 746.018          +/- 5.448        (0.7302%)

correlation matrix of the fit parameters:
                a      b      
a               1.000 
b              -0.695  1.000 
我不确定输出是否与我的bash脚本配合使用,以便通过多个文件拟合曲线。-410.518的坡度似乎很奇怪


更新的问题:这个配件在gnuplot中可以使用多个文件吗?实际绘图看起来不错,但为什么输出中有这么奇怪的值?

这只是一个语法错误,请从
stats
命令中删除
“Correlation C.”
,或者使用
name
为生成的变量指定一个前缀,而不是
stats

stats '...' name 'CorrelationC_'
show variables CorrelationC_
并且,您可以通过使用例如
awk
合并所有文件来简化调用(如果数据文件的最后一行中没有新行,与
cat data.*.csv
相反,这也可以工作):

cmd='
这很有效谢谢。。。。我想用
“相关系数C.”
我可以命名相关系数并在图中的某个地方画出来……至于我的另一个问题?斜率为-410.518这是斜率的有价值的数字吗?您必须使用
stats
name
选项为生成的变量选择前缀:
stats。。。名称“CorrelationC”
。请注意,名称中不能包含空格或标点符号,因为目标是变量名。使用
show variables CorrelationC
可以查看已生成的所有变量。如果你的斜率值是正确的,我不知道,因为我不知道你的数据
Final set of parameters            Asymptotic Standard Error
=======================            ==========================
a               = -410.518         +/- 32.5         (7.918%)
b               = 746.018          +/- 5.448        (0.7302%)

correlation matrix of the fit parameters:
                a      b      
a               1.000 
b              -0.695  1.000 
stats '...' name 'CorrelationC_'
show variables CorrelationC_
cmd = '< awk "//" data_*.csv'
stats cmd every ::121::361 using 5:27
...
plot cmd ...