向一个方向插入

时间:2012-10-31 20:34:54

标签: matplotlib

我有采样数据并用imshow()

绘制

enter image description here

我想在水平轴上进行插值,以便我可以更轻松地区分样本和点特征。 是否可以使用MPL在一个方向上进行插值?


更新
SciPy具有各种插值方法的整个包。 我使用了最简单的interp1d,如 tcaswell

所示
def smooth_inter_fun(r):
    s = interpolate.interp1d(arange(len(r)), r)
    xnew = arange(0, len(r)-1, .1)
    return s(xnew)

new_data = np.vstack([smooth_inter_fun(r) for r in data])

线性和立方结果:

enter image description here

enter image description here

正如所料:)

1 个答案:

答案 0 :(得分:4)

tutorial涵盖了numpy / scipy中可用的插值范围。如果你只想一个方向,我会独立处理每一行,然后重新组合结果。您可能还感兴趣的只是平滑数据(exmplePython Smooth Time Series DataUsing strides for an efficient moving average filter)。

def smooth_inter_fun(r):
    #what ever process you want to use
new_data = np.vstack([smooth_inter_fun(r) for r in data])