首页 > 解决方案 > 如何将信号投射到新的范围内?

问题描述

我有两个幅度范围非常不同的信号:

sig1 = np.array([1.00e-6, 1.02e-6, 1.01e-6, 0.98e-6, 1.00e-6])
sig2 = np.array([100, 101, 103, 100, 98])

我的目标是投影sig1到的基础(或幅度范围),sig2以便我可以用统一的轴而不是双y轴来绘制它们。

我的方法是首先归一sig1化为 [0,1]:

sig1_norm = (sig1 - sig1.min()) / (sig1.max() - sig1.min())

然后使用以下范围撤消标准化sig2

Sig1InSig2Range = sig1_norm * (sig2.max() - sig2.min()) + sig2.min()

从视觉上看,结果看起来不错,但我想确保这样做不会在数学上违反任何东西。我还想确保我没有扭曲sig1,并且我保持它的形状。

我的方法是否有效,还是有更合适的方法来实现这一点?

标签: pythonnumpymathsignal-processing

解决方案


Your approach is valid since the distortion is equal to all values.


推荐阅读