绘制两个不同长度的不同阵列

pib*_*180 5 python plot numpy matplotlib

我有两个数组.一个是长度(1000,)的原始信号,另一个是长度(100,)的平滑信号.我想直观地表示平滑信号如何表示原始信号.由于这些数组的长度不同,我无法将它们绘制成另一个.有没有办法在matplotlib中这样做?

谢谢!

unu*_*tbu 11

正如rth所建议的,定义

x1 = np.linspace(0, 1, 1000)
x2 = np.linspace(0, 1, 100)
Run Code Online (Sandbox Code Playgroud)

然后绘制原始对x1和平滑对x2:

plt.plot(x1, raw)
plt.plot(x2, smooth)
Run Code Online (Sandbox Code Playgroud)

np.linspace(0, 1, N)返回一个长度N为0到1(含)的等间距值的数组.


import numpy as np
import matplotlib.pyplot as plt
np.random.seed(2015)

raw = (np.random.random(1000) - 0.5).cumsum()
smooth = raw.reshape(-1,10).mean(axis=1)

x1 = np.linspace(0, 1, 1000)
x2 = np.linspace(0, 1, 100)
plt.plot(x1, raw)
plt.plot(x2, smooth)
plt.show()
Run Code Online (Sandbox Code Playgroud)

产量 在此输入图像描述