Add a scale bar to my plot

146 次查看(过去 30 天)
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:
This is (sort of) what I wanted to obtain:
Thank you in advance for your collaboration!

采纳的回答

Star Strider
Star Strider 2014-8-17
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:
  2 个评论
Philipe
Philipe 2014-8-18
Dear Star Strider,
Brilliant! By the looks of it this is exactly what I wanted. I haven't tested yet, but I will as soon as possible. Thank you for the quick reply!

请先登录,再进行评论。

更多回答(2 个)

chen xinfeng
chen xinfeng 2016-9-6
Hi, maybe you can try this Code .
The SCALEBAR is dragable & resizeable , both GUI-operate & Commandline-operate are supported.
<<www-mathworks-com-matlabcentral-answers-uploaded_files-58857-687474703a2f2f7374617469632e7a7962756c756f2e636f6d2f6368656e78696e66656e672f6a7362347676756f3262706e746d347767326136693731652f696d6167655f316172756a397573623174337074723231386562726b3031397333392e706e67.png>>
  1 个评论
Jose Rego Terol
Jose Rego Terol 2020-2-16
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?

请先登录,再进行评论。


Lee Key
Lee Key 2020-10-2
编辑:Lee Key 2020-10-2
Hi,
How to add a scale bar to a map (plot) with lat and long cordinates?
  2 个评论
Sim
Sim 2020-10-4
https://it.mathworks.com/help/map/graphic-scales.html
Star Strider
Star Strider 2020-10-4
Sim — Thank you. I do not have the Mapping Toolbox, so could have responded here.

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Annotations 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by