m2016b
m2016b

Reputation: 544

How to resize the axes of an graph on Matlab?

I need ideas to resize my axes to have a much more airy graph to better visualize and calculate the gain between the different curves.

I used the code : axis([0 6 1e-3 1e0]) or xlim([0 6]); ylim([1e-3 1e0])

enter image description here

I would like to have for example my curve with: xlim([0:0.2:6]) (just the idea, otherwise it's wrong on matlab).

enter image description here

Thank you!

Upvotes: 1

Views: 464

Answers (2)

MichaelTr7
MichaelTr7

Reputation: 4757

Logarithmic Plot:

To create the axes the function xticks() and yticks() can be used to set the intervals, start and endpoints. xticks() and yticks() essentially take vectors that define all the ticks on the scales/axes. Just in case you'd like to also edit the interval along the y-axis. This vector can be created by raising each element in the vector (-3,1:0) to be an exponent with a base of 10. Finally, setting gca (the current axis) to logarithmic will allow the vertical spacing between the ticks to be evenly distributed.

Logarithmic Plot

axis([0 6 1e-3 1e0]);

Start = 0; Interval = 0.2; End = 6;
X_Vector = (Start: Interval: End);
xticks(X_Vector);

Y_Vector = 10.^(-3: 1: 0);
yticks(Y_Vector);
set(gca, 'YScale', 'log');
title("Logarithmic Plot");
grid;

Ran using MATLAB R2019b

Upvotes: 1

dpdp
dpdp

Reputation: 322

If I understand what you want, you need more XTicks in the x limits mentioned. After you plot just:

set(gca,'XTick',0:0.2:6)

another way is to write:

h=plot(.... whatever you plot... 
h.XTick=0:0.2:6

Upvotes: 2

Related Questions