【发布时间】:2019-06-14 12:24:17
【问题描述】:
我想用破幂律函数拟合我的数据。我正在使用来自两个不同文件的数据,这是我用来在 gnuplot 工具中拟合我的数据的代码
set term wxt
p 'Data1.dat' u 1:($8*100):2:($9*100) w xyerr lt 7 t '', \
'Data2.dat' u 1:($8*100):2:($9*100) w xyerr lt 8 t ''
set log x 2
f(x) = A*(x**p)*(x**(p-q))
A = 1.0
p = 1.5
q = 0.1
rep f(x) lt 8 lw 2 t ''
fit f(x) '< cat Data1.dat Data2.dat' u 1:($8*100):($9*100) yerr via A,p,q
replot`
但我的试衣是这样的:
是我使用函数的方式不对还是其他原因?
【问题讨论】:
-
“破幂律”是指this thing吗?如果是,你也想适应“断点”吗?
-
请您添加数据点好吗?
-
嗯,你的起始参数似乎有问题。该功能看起来不像您的数据。 Gnuplot 不能创造奇迹,你必须提供合理的值,除非你适合纯多项式。
-
@maij 我试图找到适合我的数据的合适函数,我发现破碎的力量是最好的。由于我使用来自两个不同文件的数据,这些文件使整个绘图的 X 轴值增加,因此我并不关心“断点”
-
@Karl 函数在用于具有预定义的破幂律的其他绘图设备时确实适用。我发现如何在 gnuplot 中使用相同的功能很困难