How could i displace the values of X axis under X axis (Y negative) ?

 Respuesta aceptada

Star Strider
Star Strider el 13 de Feb. de 2019
Use the equation (or values) for the line, and plot the numbers just as you have plotted them under the circles. If you do not have an equation for the line that gives you the values for it at every ‘x’ value, use the interp1 function to calculate them.

4 comentarios

Sorry, but i would to displace the values of X axis under the X axis (Y negative).
Apparently the numbers are not x-tick values, or you could possibly use 'XTick' and 'XTickLabel'.
I have no idea how you are currently writing them, or what relation they have to the x-tick values. (It would help to know.) To put them under the x-axis, you can use the text function:
x_vals = x_values_corresponding_to_the_XTick_locations_you_want_the_numbers;
text(x_vals, zeros(size(x_vals)), compose('%d', 2:2:16), 'VerticalAlignment','top', 'HorizontalAlignment','center')
If you do not have the compose funciton, use sprintfc (undocumented). The arguments are the same:
text(x_vals, zeros(size(x_vals)), sprintfc('%d', 2:2:16), 'VerticalAlignment','top', 'HorizontalAlignment','center')
this is my script for the plot
plot(ALFAinv,CMacinv,'ok','LineWidth',1)
grid on
xlabel('\alpha [°]')
ylabel('C_M_a_c','Rotation',0)
set(gca,'fontsize',11)
ax=gca;
ax.XAxisLocation='origin';
ax.YAxisLocation='origin';
set(gca,'Ydir','reverse')
ax.YAxis.TickDirectionMode='manual';
ax.YAxis.TickDirection='in';
axis([-6 19 -0.8 0.8])
hold on
plot(ALFAxf,CMacxf,'--b','LineWidth',1)
plot(ALFAxl,CMacxl,'-k','LineWidth',1)
title('POLO X=0.265 Y=0 63A412 Re=3e6','LineWidth',1)
legend ('XFOIL non viscoso','XFOIL ascissa forzata','XFOIL ascissa libera')
hold off
I don‘t have your data, so I can’t run your script.
I also have no idea what you want to do.
I gave you valid code. If it doesn’t work for you, I need to know the reason. Your posted code — especially without necessary data — gives me no useful information.

Iniciar sesión para comentar.

Más respuestas (1)

Yair Altman
Yair Altman el 16 de Feb. de 2019
Editada: Yair Altman el 16 de Feb. de 2019
A peculiarity of AxisLocation='origin' is that the X and Y tick labels automatically switch location (from below the X axis to above-it, and from left of the Y axis to right-of-it, respectively) depending on where the axes origin (0,0) is located. You can easily see this behavior by dragging (panning) the axes up/down and left/right, respectively.
If you want to ensure that the labels appear beneath the X axes, then make the YLimit above the axes larger than the one beneath it. For example:
ax.YLim = [-.80001,.8];
axis([-6 19 -0.80001 0.8]); % alternative

2 comentarios

@Yair — Thank you yet again!
+1
My pleasure - see you again soon :-)

Iniciar sesión para comentar.

Categorías

Productos

Preguntada:

el 13 de Feb. de 2019

Editada:

el 16 de Feb. de 2019

Community Treasure Hunt

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

Start Hunting!

Translated by