X-label additional text automatically.

2 visualizaciones (últimos 30 días)
Djordje Damnjanovic
Djordje Damnjanovic el 11 de Dic. de 2020
Comentada: Star Strider el 11 de Dic. de 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 comentarios
dpb
dpb el 11 de Dic. de 2020
Editada: dpb el 11 de Dic. de 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 el 11 de Dic. de 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.

Iniciar sesión para comentar.

Respuesta aceptada

Star Strider
Star Strider el 11 de Dic. de 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 comentarios
Djordje Damnjanovic
Djordje Damnjanovic el 11 de Dic. de 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 el 11 de Dic. de 2020
As always, my pleasure!

Iniciar sesión para comentar.

Más respuestas (1)

Djordje Damnjanovic
Djordje Damnjanovic el 11 de Dic. de 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