You are using the plot command in a way that you wish it worked, without carefully understanding how the syntax actually works. You cannot just put in four columns of data into a command, and hope it does what you want.
Here is some simplified data, and your plotting code:
h = plot(data(:,1),data(:,2), data(:,3), data(:,4),'k.');
If you carefully read the documentation you will see that your code is plotting two pairs of data against each other: data(:,1) vs. data(:,2), and data(:,3) vs. data(:4). Then you add a 'LineSpec' (black dots) to the second pair of plots, while the first set uses the default, which is a blue line.
This code is functionally equivalent to
h = plot(data(:,3), data(:,4),'k.');
It's not clear to me what you actually want the plot to be. If you want the projection of the the 4-dimensional data onto 2 dimensions, then I believe you simply ignore the 3rd and 4th dimension, and plot
h = plot(data(:,1),data(:,2),'k.');