Put axis label in their respective middle (3D plot)

54 visualizaciones (últimos 30 días)
Francesco Porretta
Francesco Porretta el 30 de Sept. de 2021
Comentada: Kelvin Anoh el 11 de Mayo de 2024
I'm trying to put the axis label in a 3D plot in the middle of the axis, without rotate them.
As example, consider this figure
obtained using this code:
colormap(hsv);
s = 0:0.025:3;
t = s;
[x,y] = meshgrid(s,t);
z = x.^2 - y.^2;
mesh(x,y,z);
xlabel('time[sec]')
ylabel('position[mm]')
zlabel('force[N]')
What I want to obtained is something as shown in figure below (look x and y labels).
Is it possible??

Respuesta aceptada

dpb
dpb el 30 de Sept. de 2021
Editada: dpb el 30 de Sept. de 2021
...
mesh(x,y,z);
hXL=xlabel('time[sec]'); % default label, save handle
hXL.Position=hXL.Position+[0.5 0 0]; % adjust default position
comes reasonably close -- salt to suit and follow the same idea for y.
  1 comentario
Kelvin Anoh
Kelvin Anoh el 11 de Mayo de 2024
You may also wish to rotate the text following @dpb's example:
hXL.Rotation = 15; % where 15 is the angle of rotation in degrees

Iniciar sesión para comentar.

Más respuestas (0)

Community Treasure Hunt

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

Start Hunting!

Translated by