![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/175409/image.png)
Add a scale bar to my plot
156 views (last 30 days)
Show older comments
Hello, I was just wondering if there would be any way to replace the axis line for some sort of a scale bar. I am quite convinced there is no built command for this in matlab, so I was wondering how you guys would tweak the plot in order to get this. Just for the sake of illustration, this is what I have:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/145118/image.jpeg)
This is (sort of) what I wanted to obtain:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/145119/image.jpeg)
Thank you in advance for your collaboration!
0 Comments
Accepted Answer
Star Strider
on 17 Aug 2014
This was an interesting project!
You will probably have to experiment to get exactly the effect you want, but this will get you going:
% Create Data —
t = linspace(10,34); % ‘t’ (ms)
y = [20+5*sin(2*pi*3*t/24)+2*randn(1,100); 60+5*cos(2*pi*3*t/24)+2*randn(1,100)];
figure(1)
plot(t, y)
hold on
plot([12; 12], [-40; -20], '-k', [12; 22], [-40; -40], '-k', 'LineWidth', 2)
hold off
axis([[10 34] -60 140])
text(11.8,-30, '10 mA', 'HorizontalAlignment','right')
text(17,-45, '10 ms', 'HorizontalAlignment','center')
% set(gca, 'XTick', [10:2:34], 'XTickLabel', {[] 12:2:32 []}) % Used temporarily to get the ‘text’ positions correct
set(gca, 'Visible', 'off')
Produces:
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/175409/image.png)
More Answers (2)
chen xinfeng
on 6 Sep 2016
The SCALEBAR is dragable & resizeable , both GUI-operate & Commandline-operate are supported.
<<www-mathworks-com-matlabcentral-answers-uploaded_files-58857-687474703a2f2f7374617469632e7a7962756c756f2e636f6d2f6368656e78696e66656e672f6a7362347676756f3262706e746d347767326136693731652f696d6167655f316172756a397573623174337074723231386562726b3031397333392e706e67.png>>
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/174997/image.png)
1 Comment
Jose Rego Terol
on 16 Feb 2020
HI Chen,
Your scalebar is amazing. There is something I want to change. when I pan the plot, the bar moves with the plot. How can I keep it steady?
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/272004/image.jpeg)
Lee Key
on 2 Oct 2020
Edited: Lee Key
on 2 Oct 2020
Hi,
How to add a scale bar to a map (plot) with lat and long cordinates?
2 Comments
Star Strider
on 4 Oct 2020
Sim — Thank you. I do not have the Mapping Toolbox, so could have responded here.
See Also
Categories
Find more on Annotations in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!