Adding text to each subplots

163 次查看(过去 30 天)
I am plotting 4 maps in one figure and I want to add text at left bottom of each subplot. If given a fix lat and lon range, I can assign a location to the text like:
text(lon,lat,texts);
or I can use relative location like: annotation(figure1,'textbox', [distance1 distance2 width height] ) for each subplot.
BUT what if I want to make a function that always put the text at the left bottom of each subplot given any size of the map?
For example, my current function can make worldmaps with texts in each subplot like this:
the code is: text(-17790000,-3064000,texts,'fontsize',13);
but the text won't show up if I am plotting a continent rather than the globe:
Any solution for that?
Thanks!

采纳的回答

Star Strider
Star Strider 2021-5-6
Use xlim and ylim to make the text positions relative to the axes —
x1 = linspace(0,10, 25);
y1 = exp(-0.1*x1);
x2 = linspace(-1,1, 25);
y2 = exp(-0.75*x2) .* sin(2*pi*x2);
subplot(2,1,1)
plot(x1, y1)
grid
text(min(xlim), min(ylim), sprintf('Text for subplot %d', 1), 'Horiz','left', 'Vert','bottom')
subplot(2,1,2)
plot(x2, y2)
grid
text(min(xlim), min(ylim), sprintf('Text for subplot %d', 2), 'Horiz','left', 'Vert','bottom')
.
  4 个评论
Milo Fitzpatrick
Milo Fitzpatrick 2022-5-31
Hi! is there a way I can adjust this in order to place the text into the top right hand corner please!
Thank you
Hannah
Hannah 2022-5-31
You can use replace min(xlim) by max(xlim) etc.

请先登录,再进行评论。

更多回答(0 个)

类别

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