Stretch a plot while keeping area under same
8 views (last 30 days)
Show older comments
I have a plot with x and y axis data. How can I strech it whilst keeping area under it same? Can you please provide an example.
Thanks!
0 Comments
Answers (1)
DGM
on 25 Aug 2021
If you scale the curve in the X direction by a factor of 2, then scale the curve in Y by a factor of 1/2.
X = 0:100; % linear x
Y = rand(1,101); % random y
plot(X,Y)
A1x = trapz(X,Y) % area under the curve
A2x = trapz(2*X,Y) % area under the curve when X is stretched by 2
A2xc = trapz(2*X,Y/2) % corrected
Ignoring trying to intuit the calculus, it's easier to look at this in relative terms. Consider the curve occupying a rectangular box, wherein the area under the curve (Ac) occupies some fraction of the total area (At) of the box. If you scale one dimension of the box (and everything therein) by 2, the total area is doubled, but the area ratio remains constant. In other words, Ac is simply proportional to At.
If there's something other than a simple scale transformation going on (e.g. changing data extents), that may not hold true.
0 Comments
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!