【发布时间】:2015-06-01 18:19:20
【问题描述】:
我有数据点 f(x_i) 在点 x_i(函数 f 未知,仅在数字上), f(0) = 0。数据显示小 x 处的峰状结构,随后是缓慢的肩部衰减较大的 x 设置在最大值的一半处。我想通过这些数据点绘制平滑线。 如果我使用贝塞尔曲线,那么 f(0)=0 确实是可以的,但峰值显着降低(约 25%)。如果我使用 acsplines,那么峰值看起来会好一些,但 f(0) = 0 不会保持。 如何在不丢失重要信息 (f(0)=0) 或分布的峰值高度的情况下平滑该数据集?
【问题讨论】:
-
尝试三次样条,
smooth csplines或smooth mcsplines -
谢谢,确实 cplines 或 mcsplines 比其他人更好地保持峰值。然而,这是有代价的:如果我选择的权重使得峰高是正确的,那么现在曲线的其余部分(高 x 处的肩膀)看起来会摇摆不定。有没有办法在 gnuplot 中进行分段平滑??
-
smooth mcsplines就是这样做的,所以应该可以正常工作。顺便说一句:csplines和mcsplines都不使用权重。 -
抱歉,我不够清楚:mcsplines 确实可以很好且平滑地再现峰值区域,但在尾部会出现摆动。我想抑制这些摆动。