Skip to main content
 首页 » 编程设计

python之Griddata 创建坏形状 scipy

2025年05月04日8haluo1

我正在使用这个 code使用 griddata 可视化我的数据。代码如下所示:

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。记住菜鸟级别:)

请您参考如下方法:

尽管这很愚蠢,但答案只是增加 linspace 中“stepsize”的值,例如:

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