Python 是一種高級編程語言,它具有優秀的靈活性和可擴展性。在 Python 中,我們可以輕松地生成各種波形,包括方波。
import numpy as np
import matplotlib.pyplot as plt
# 定義方波函數
def square_wave(x, T):
return np.where(np.mod(x, T)< T/2, 1, -1)
# 生成方波
t = np.linspace(0, 1, 500)
y = square_wave(t, 0.5)
# 繪制圖像
plt.plot(t, y)
plt.ylim([-1.5, 1.5])
plt.xlabel('Time (s)')
plt.ylabel('Amplitude')
plt.title('Square Wave')
plt.show()
上面的代碼使用了 NumPy 和 Matplotlib 庫來生成和繪制方波。關鍵是定義了一個名為 square_wave 的函數,它接受表示時間軸的數組以及方波周期的參數,并返回一個相應的方波信號。這個函數利用了 NumPy 庫中的 where 和 mod 函數,以及 Python 中的三元操作符來實現。
在主程序中,我們使用 linspace 函數來創建一個表示時間軸的數組 t,其范圍為 [0, 1),包括 500 個元素。然后調用 square_wave 函數來生成一個相應的方波信號 y。最后,我們使用 Matplotlib 庫來繪制這個方波,并設定橫縱坐標軸的標簽和標題。
通過這個例子,我們可以看到 Python 在波形生成中的簡潔和高效,這為我們在信號處理和控制應用中提供了非常強大的工具。