Effacer les filtres
Effacer les filtres

How can I specify axis spacing?

465 vues (au cours des 30 derniers jours)
kanyvt
kanyvt le 23 Fév 2017
Commenté : Image Analyst le 29 Jan 2022
I have X axis data from 15 to 30. By default it has spacing of 5, like 15,20,25,30. I want to specify spacing of 2, like 15,17,19 and so on. How can I do that? Can I use Xtick and y tick for it ? Thanks.

Réponse acceptée

Jan
Jan le 23 Fév 2017
AxesH = axes('Xlim', [15, 30], 'XTick', 15:2:30, 'NextPlot', 'add');
plot(15:30, rand(1, 16));
  2 commentaires
kanyvt
kanyvt le 24 Fév 2017
Thanks, it helped.
Stelios Fanourakis
Stelios Fanourakis le 13 Mai 2019
Hi. How can someone estimate the average of y values for every interval of the x axis as you state it?

Connectez-vous pour commenter.

Plus de réponses (3)

Image Analyst
Image Analyst le 23 Fév 2017
If you have R2016b you can use the new xticks function:
xticks(15:2:30);
yticks(0:5:100); % Whatever....
Or with versions R2014b - R2016a:
ax=gca
ax.XTick = 15:2:30;
ax.YTick = 0:5:100;
  3 commentaires
Kamil Haziq
Kamil Haziq le 22 Mar 2018
How to do the same thing for time variables? For example from 00:00:00 to 01:00:00 . I want it to be in 15 minute intervals. 00:15:00 00:30:00 and so on.
kanyvt
kanyvt le 25 Mar 2018
Modifié(e) : Image Analyst le 25 Mar 2018
Hey Kamil,
Can you send the pic/image of your graph? I will take a look and try to help.
Thanks,

Connectez-vous pour commenter.


Geoff Hayes
Geoff Hayes le 23 Fév 2017
kanyvt - see specify axis tick values for details on how to set the ticks and labels.

A N
A N le 19 Mai 2018
I've got other question. I've got chart of bending moments of the beam. Between x=0 and x=0.6 the moments are described by the parabolic function. But in the chart it seems like a linear function. How can I specify (make smaller) distance betweeen YTicks or change units on Y-Axis to make clear that is quadratic function of bending moments? %set(gca,'ytick',[-0.27:0.05:0.02]) or something like that doesn't help.
  6 commentaires
pulkit velani
pulkit velani le 29 Jan 2022
@Ibrahim Elayan: Issue is of not plotting but of computaion. Compute X and Y values at closer interval.
e.g. If X = 1:10 and you have Y = X^2 the plot will look linear. Instead try X =1:0.1:10 and plot it you will find more accurate curve compare to earlier.
I hope this will help you.
Image Analyst
Image Analyst le 29 Jan 2022
@Ibrahim Elayan, try this:
period = 0.1
t = linspace(0, 0.675, 1008);
% Prepare amplitude. Goes from 2.5 to 1 during the first period
% then is 1 after that.
amplitude = ones(1, length(t)); % Initize
p1 = round(length(t)/6);
amplitude(1:p1) = linspace(2.5, 1, p1);
% Make signal.
y = amplitude .* sin(2 * pi * t / period);
% Plot signal
plot(t, y, 'b-', 'LineWidth', 2);
grid on;
xlabel('t');
ylabel('y');

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by