Jak używać griddata z scipy.interpolate

Mam dane trójkolumnowe (piksel x, piksel y, wartość z) z milionem linii. Dane pochodzą z obrazu i są zduplikowane wartości z. Teraz muszę zrobić spisek powierzchniowy.Ten obraz jest doskonałym przykładem. Ale teraz obraz wyjściowy jest pusty. Czy ktoś może sprawdzić kod?

import numpy as np
from enthought.mayavi import mlab
from scipy.interpolate import griddata
x,y,z = np.loadtxt('test.csv',delimiter=',',usecols=(0,1,2),unpack=True) 
xi,yi = np.mgrid[0:3000:3000j, 0:3000:3000j]
zi = griddata((x, y), z, (xi, yi),method='linear')
mlab.surf(xi,yi,zi)
mlab.show()

questionAnswers(1)

yourAnswerToTheQuestion