MATLAB: Plotting scale bar with vertical margins

MATLABscale length plot

I wanna plot horizontal scale bars with vertical margins like the ones in figure below that present the observation radius and the safe distance. Any method that works is much appreciated.

Best Answer

X=[0.2,0.1]; Y=[0.9,0.75]; E=[0.15,0.05]; % positions, bar length about midpint
hEb=errorbar(X,Y,E,'horizontal','b.', 'linewidth',1.5,'capwidth',10); % add scales
xlim([0 1]),ylim([0 1]) % just to set bounding limits on axis for viewing...
hTxt=text(X,Y,[{'Observation Radius'},{['Safe' char(10) 'Distance']}], ...
'horizontalalignment','center','verticalalignment','top','fontsize',8);
results in following which is reasonable approximation. Draw the other pieces, then hold on to add the errorbars. The '.' linestyle stops drawing line between the points; otherwise would have to add separate error bars.
untitled.jpg
NB: Must use the char(10) for the line break; \n is not interpreted as newline by default TeX interpreter.