Clear Filters
Clear Filters

X-label additional text automatically.

2 views (last 30 days)
Dear all,
I need help about Figures in Matlab. Is it posible to put on x-label two separate texts, for intance one in middle and one od the right edge of figure, but automaticly without command 'text'. For example like in the fig below (I marked it with the red circle):
If I use command xlabel for Frequency then I need to use comand text for (a) and in command tect I need to put cordinates and I do not want to do that for every figure. I need automatical way.
  4 Comments
dpb
dpb on 11 Dec 2020
Edited: dpb on 11 Dec 2020
" I need to do 30 different positioning of text, ..."
Why is it any different? Looks like the axes would be the same or at least very similar.
You have the x values in order to be able to plot the data, code them in, too...text() uses the axes coordinates for location; at worst you have to work out the y coordinate once to align it vertically where desired.
Djordje Damnjanovic
Djordje Damnjanovic on 11 Dec 2020
It is different because all 30 pictires are different, some are in time domain, some i frequency etc...All different values of x an y axis.
I can do this for example but I do not want in this way:
plot(t,sig,'LineWidth',1)
xlabel('{\it t} [s]','FontName','times','FontSize',8)
text(0.358,-39.4,'(a)','FontName','times','FontSize',8,'Color','k')
But in this way for every new figure coordinates in comand text are different and I need manual settings of this values each time and I do not want to do that, I want code for automatic positioning like in the second line of example xlabel.
If You know how to do that automaticly can write it down.

Sign in to comment.

Accepted Answer

Star Strider
Star Strider on 11 Dec 2020
Try something like this:
x = 1:10;
y = randn(1,10);
figure
plot(x,y)
xlabel('Frequency [Hz]')
text(max(xlim), min(ylim)-diff(ylim)*0.1, '(a)', 'HorizontalAlignment','right', 'VerticalAlignment','middle')
It seems to work correctly in my simulations, and appears to produce constant relative positioning of ‘(a)’.
  6 Comments
Djordje Damnjanovic
Djordje Damnjanovic on 11 Dec 2020
Thanks a lot. It have manuel setting but not as my firts code so it is ok, I only need to change posmult like You said!
Thank You again!

Sign in to comment.

More Answers (1)

Djordje Damnjanovic
Djordje Damnjanovic on 11 Dec 2020
Anybody with sugestion?

Categories

Find more on Labels and 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!