Stretch a plot while keeping area under same

3 Ansichten (letzte 30 Tage)
Sanchit Sharma
Sanchit Sharma am 25 Aug. 2021
Beantwortet: DGM am 25 Aug. 2021
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!

Antworten (1)

DGM
DGM am 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
A1x = 46.8929
A2x = trapz(2*X,Y) % area under the curve when X is stretched by 2
A2x = 93.7858
A2xc = trapz(2*X,Y/2) % corrected
A2xc = 46.8929
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.

Kategorien

Mehr zu Fit Postprocessing finden Sie in Help Center und File Exchange

Tags

Produkte


Version

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by