How to expand a waveform on x-axis?
3 views (last 30 days)
Show older comments
Hi All,
I want to expand a waveform on the x-axis. Specificlly, in the following fig, I would like to expand a waveform in such a way that the waveform from with X = 0:1 sec is expanded from x = 0:2.5. In other words, I would like to plot the waveform such that the duration from 0 to 1 sec be plotted as five big boxes, i.e., each grided box. Any suggestions would be appreciated.
2 Comments
Walter Roberson
on 26 Aug 2022
Are you asking for something like an inset "picture in picture" zoomed view in addition to what you have now?
Are you asking for the axes to be non-linear, with 0 to 1 taking roughly the first half of the plot, and 1 to 5 taking roughly the second half of the plot?
Accepted Answer
Walter Roberson
on 26 Aug 2022
MATLAB only gives control over major ticks, with it deciding minor ticks automatically. Grid lines are drawn at the minor tick positions.
So if you want grid lines at specific distance, you can set those positions as major ticks in xticks. Or you can draw the lines yourself.
Your current range is 0 to 5, so 0 to 1 is 1/5 of the space. You want 25 boxes in that space so each will take 1/25 of 1/5 = 1/125 of the width. If your axes is 750 pixels wide that would make the boxes 6 pixels apart. I don't think I see the benefit of drawing boxes that fine.
3 Comments
Walter Roberson
on 27 Aug 2022
xt = [0:1/25:1, 1.5:.5:5];
xticks(xt);
labs = string(xt);
labs(1:26) = "";
labs([1:5:26]) = string(0:0.2:1);
xticklabels(labs)
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!