MATLAB: How to draw 2D or 3D graphs with large data

2d3dMATLAB

I have a data that contains X and Y coordinates (almost 25000 each), I also have Z values from an experiments. I would like to draw a 3D graph or 2D that can plot X and Y coordinates while Z coresponds to the height/density or just color at each X and Y values. I have tried to reduce my data to 400 and used the below
z=repmat(Z,1,400);
Figure
Surf(X,Y,z)
shading interp
colorbar
view ([0 90])
axis('equal')
However, the figure wasn't understandable and it was showing a square unlike the real data even when I use only the 400 it suppose to be like a (+) not square.
I have also tried the meshgrid for X and Y and repmat for Z but the result was almost the same.
I'm looking for something simillar to the attached figure.
Is there anyway that I can do that knowing that all my data are known (no equations or assumptions needed)

Best Answer

Let (x,y,z) be your column data.
dt = delaunayTriangulation(x,y) ;
tri = dt.ConnectivityList ;
figure
trisurf(tri,x,y,z)
shading interp