我正在嘗試使用matplotlib將曲面模型擬合到3D數據集(x,y,z)。
其中z = f(x,y)
。
所以,我要對二次擬合方程:Python中的打印曲面擬合公式
f(x,y) = ax^2+by^2+cxy+dx+ey+f
到目前爲止,我已經成功地繪製了用最小二乘法採用3D-安裝面:
# best-fit quadratic curve
A = np.c_[np.ones(data.shape[0]), data[:,:2], np.prod(data[:,:2], axis=1), data[:,:2]**2]
C,_,_,_ = scipy.linalg.lstsq(A, data[:,2])
#evaluating on grid
Z = np.dot(np.c_[np.ones(XX.shape), XX, YY, XX*YY, XX**2, YY**2], C).reshape(X.shape)
但,我怎樣才能打印/得到表面的擬合方程(帶有係數值)?
我的幫助將不勝感激。
謝謝。
你可以發佈相應的代碼:「到目前爲止,我已經成功繪製了3d-fitting-s使用最小二乘法的urface「? – etna
@etna添加了根據您的評論使用的裝配部分。 – diffracteD
好的...根據函數的文檔scipy.linalg.lstsq http://docs.scipy.org/doc/scipy-0.15.1/reference/generated/scipy.linalg.lstsq.html估計的係數應該被存儲在你的變量'C'因此'print C'似乎是一件合理的事情:) – etna