2

我正在使用此代码使用 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()

如您所见,有一些菱形形状实际上应该像高斯的轮廓,例如此处所示

难道我做错了什么?我应该使用其他工具而不是 griddata 吗?我在使用 sagemath 时遇到了问题,现在切换到“纯”python。请记住 Noob 级别:)

4

1 回答 1

1

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

xi = np.linspace(22.4,22.5,100)
于 2012-07-27T10:45:29.217 回答