Filter löschen
Filter löschen

How can I specify axis spacing?

465 Ansichten (letzte 30 Tage)
kanyvt
kanyvt am 23 Feb. 2017
Kommentiert: Image Analyst am 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.

Akzeptierte Antwort

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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (3)

Image Analyst
Image Analyst am 23 Feb. 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 Kommentare
Kamil Haziq
Kamil Haziq am 22 Mär. 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 am 25 Mär. 2018
Bearbeitet: Image Analyst am 25 Mär. 2018
Hey Kamil,
Can you send the pic/image of your graph? I will take a look and try to help.
Thanks,

Melden Sie sich an, um zu kommentieren.


Geoff Hayes
Geoff Hayes am 23 Feb. 2017
kanyvt - see specify axis tick values for details on how to set the ticks and labels.

A N
A N am 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 Kommentare
pulkit velani
pulkit velani am 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 am 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');

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by