MATLAB: Stretch Yaxis to increase gap between data points in scatter plot

MATLABplotplotting

Hi,
I would like to create a plot similar to the one inserted below (see black and white figure). In my attempts at reproducing the plot the datapoints are too close together along the Yaxis (see colored figure inserted below). Would anyone be able to point me into the right direction for solving this? I would be extrmeely grateful!
For reference, this is the code I am using for the plot:
figure
% Model{x} the result of a regression model
h = plot(Model{1}.Coefficients.Estimate(2), 1, '*')
hc = h.Color;
sd_vct = Model{1}.coefCI;
errorbar(Model{1}.Coefficients.Estimate(2),1,sd_vct(2,1), 'horizontal','color', hc);
xlim([-0.5 0.5])
% set(gca,'ytick',linspace(0,147,13))
hold on
for k = [1:147]; % 1:147;
h = plot(Model{k}.Coefficients.Estimate(2), k, '*') % spaceInPlot(k)
hc = h.Color;
sd_vct = Model{k}.coefCI;
errorbar(Model{k}.Coefficients.Estimate(2),k,sd_vct(2,1), 'horizontal','color', hc);
end
hold off
Milberg_reprod_avswh.png
Milbergetal_copy.png

Best Answer

Your y position is just specified as being k, which increments in steps of 1. Just change to using something else, e.g. 3*k in:
errorbar( Model{k}.Coefficients.Estimate(2), 3*k, sd_vct(2,1), 'horizontal','color', hc );
or whatever you want. You have complete control over that y value for each plot.
Or just resize your figure, because whatever the y spacing, if you have to fit 150 plots on top of each other in the same space then they will still take up the same room irrespective of the y distance.