Python 是一門強大且靈活的編程語言,可以用來進行曲線數字化。在科學計算領域,曲線數字化可以幫助我們將手繪曲線轉換為數學模型中的數據點,方便后續的數據分析和模擬。Python 有許多用于數字化的工具和庫,如 SciPy 和 NumPy,可以快速且方便地幫助我們實現曲線數字化。
import numpy as np
from scipy.interpolate import interp1d
# 原始數據
x = np.array([0, 1, 2, 3, 4, 5])
y = np.array([0, 0.8, 0.9, 0.1, -0.8, -1])
# 通過插值進行曲線數字化
f = interp1d(x, y, kind='cubic')
xnew = np.linspace(0, 5, num=41, endpoint=True)
ynew = f(xnew)
# 顯示數字化后的數據點
for i in range(len(xnew)):
print("({:.2f}, {:.2f})".format(xnew[i], ynew[i]))
在上面的示例代碼中,我們使用了一個名為 interp1d 的函數來進行插值數值化,它可以將原始的手繪曲線轉換為數學模型中的數據點。代碼中,我們先定義了一個原始數據數組 x 和 y,它們分別代表曲線上的 x 坐標和 y 坐標。然后我們使用 kind='cubic' 來指定插值為三次樣條插值,可以獲得更為平滑的函數,并生成等距的 xnew 數組。最后我們使用 f(xnew) 來獲得 ynew 數組,這個數組包含曲線在等距 x 坐標上的相應 y 坐標,完成數據的數值化。在輸出中,我們遍歷了數字化后的數據,并格式化輸出為兩位小數形式,方便查看。
上一篇python 自發送郵件
下一篇vue和fn函數