MATLAB: Plotting 3D grating

3d gratingrectangular pulse

Considering the plots below, I have a problem in adding an extra dimension to a 1D rectangular pulse train. In other words, I am trying to implement a 3D grating in matlab, as shown below. Any help would be appreciated!

Best Answer

I think this is what you're looking for
x = [1 2 2 3 3 4 4 5 5 6];
z = [0 0 1 1 0 0 1 1 0 0];
y = [1 4];
[X,Y] = meshgrid(x,y)
Z = repmat(z,[length(y) 1])
surf(X,Y,Z,'FaceColor',[0.5 0.5 0.5])