If you want to make a 3D surface plot from a set of Cartesian coordinates then it can be easily done using Matlab . Just follow these simple steps:
1-Organize data in form of x,y,z coordinates .
2-Make x,y,z matrices on Matlab .
3-Run the following Script:
plot3(x,y,z,'.-')
tri = delaunay(x,y);
plot(x,y,'.')
[r,c] = size(tri);
disp(r)
h = trisurf(tri, x, y, z);
axis vis3d
shading interp
Example: Following is the X-Y view of a surface in 3d