python中最合适的线框

时间:2015-03-16 07:55:59

标签: python matplotlib scipy curve-fitting contour

我在matplotlib中使用三维列表数据进行操作。

尝试绘制最合适的wireframe

我的数据基础架构(不代表实际数据):

x=[1.2, 1.3, 1.6, 2.5, 2,3, 2.8]
y=[167.0, 180.3, 177.8,160.4,179.6, 154.3]
z=[-0.3, -0.8, -0.75, -1.21, -1.65, -0.68]

到目前为止,我已经能够使用

获得合适的线框
   data = np.c_[x,y,z]  
   mn = np.min(data, axis=0)  
   mx = np.max(data, axis=0)  
   X,Y = np.meshgrid(np.linspace(mn[0], mx[0], 20), np.linspace(mn[1], mx[1], 20))   
   XX = X.flatten()  
   YY = Y.flatten()  
   # 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)      

到目前为止,我获得了一个类似线框的(虽然不能在画布上print方程式): wireframe-fit

  
    

我怎样才能确定我是否以正确的方式安装?我如何检查适合度可能是多少?关于如何用轮廓叠加这条曲线的任何想法都会非常好。

  

请帮忙。 谢谢

1 个答案:

答案 0 :(得分:0)

我想你想要griddata()。您可以查看以下网站,该网站完全符合您的要求:http://wiki.scipy.org/Cookbook/Matplotlib/Gridding_irregularly_spaced_data