X-label additional text automatically.

2 Ansichten (letzte 30 Tage)
Djordje Damnjanovic
Djordje Damnjanovic am 11 Dez. 2020
Kommentiert: Star Strider am 11 Dez. 2020
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 Kommentare
dpb
dpb am 11 Dez. 2020
Bearbeitet: dpb am 11 Dez. 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 am 11 Dez. 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.

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Star Strider
Star Strider am 11 Dez. 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 Kommentare
Djordje Damnjanovic
Djordje Damnjanovic am 11 Dez. 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!
Star Strider
Star Strider am 11 Dez. 2020
As always, my pleasure!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Djordje Damnjanovic
Djordje Damnjanovic am 11 Dez. 2020
Anybody with sugestion?

Community Treasure Hunt

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

Start Hunting!

Translated by