python-生成数据

生成正弦波

def gen_sine_wave(frequency,amplitude, start,stop):
"""
生成正弦波数据
:param frequency: 波形频率 Hz
:param amplitude: 波形幅值
:param start: x 轴起始位置
:param stop: x 轴结束位置
:return: 正弦波数据 (x,y)

正弦波公式:y = A sin(Bx + C) + D
A 振幅
B 周期 = 2*pi/B
C 相位(X轴位移) = -C/B
D Y轴位移

frequency = 2
x,y = gen_sine_wave(frequency,normalization_half_y[frequency],0,360)
plt.subplot(313)
plt.grid()
plt.plot(x, y)
plt.show()
"""
x = np.linspace(start, stop, frequency * 100)
print('xlen=', len(x))
period = 2 * np.pi / (360 / frequency)
y = amplitude * np.sin(period * x)
return (x,y)

相同数据列表

# [9,9]
x_middle = 9
x = [x_middle for i in range(2)]

生成浮点数列表

y = np.arange(6,7,0.5)