2012-07-26 21 views
2

我使用code来使用griddata可视化我的数据。代码如下所示:Griddata创建不良形状scipy

import math 
import numpy as np 
from scipy.interpolate import griddata 
import matplotlib.pyplot as plt 


**THE LIST C=DATA IS IN THE LINK ABOVE** 

cx=np.asarray([row[0] for row in C]) 
cy=np.asarray([row[1] for row in C]) 
cz=np.asarray([row[2] for row in C]) 

xi = np.linspace(22.4,22.5,10) 
yi = np.linspace(37,37.1,10) 
# grid the data. 
zi = griddata((cx, cy), cz, (xi[None,:], yi[:,None]), method='nearest') 

plt.contourf(xi,yi,zi,300,cmap=plt.cm.jet) 
# draw colorbar 
plt.colorbar() 

plt.xlim(xmin=22.4,xmax=22.5) 
plt.ylim(ymin=37,ymax=37.1) 
plt.title('no diamonds please') 
plt.show() 

正如你可以看到有显示here

一些菱形形状,这实际上应该是像高斯例如像轮廓难道我做错了什么?我应该使用其他工具而不是griddata吗?我有问题使用sagemath这个,现在切换到“”纯“python。Noob level记住:)

回答

1

愚蠢的是,它的答案只是增加linspace中的”stepsize“的值,例如:

xi = np.linspace(22.4,22.5,100) 
+0

当我尝试这样做,我感到有点儿不同颜色的形状类似的“砖”,而不是3个高斯拱。 – Dave 2012-07-27 16:20:10

+0

这是在工作中'nearest'方法---不平滑。 – 2012-07-30 21:19:44