# MATLAB: Plotting 3D for three columns of data

3dsurface

I want to do a 3D plot based on 3 columns of data (X,Y and Z) . X column show positions, y column show speed and z column show emissions. So the result will shows emissions as colors on x(position)-y(speed) axis. Now I have this in 3D but I want a surface output with colours as emission value.

How about using scatteredInterpolant function?
The following is an example:
D = xlsread('LMS.xlsx');F = scatteredInterpolant(D(:,1),D(:,2),D(:,3));[xq,yq] = meshgrid(linspace(0,3,20),linspace(0,45,20));zq = F(xq,yq);figuresurf(xq,yq,zq)hold onscatter3(D(:,1),D(:,2),D(:,3),'r','filled')colorbar