How can I do integral from discrete data points?

16 visualizzazioni (ultimi 30 giorni)
I have data "x" and "y" stored as arrays in MATLAB. How can I evaluate the area under the curve just from my data?

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 24 Gen 2018
You can first interpolate your data to get a function handle. Then, you can use "integral" to integrate your data:
1. Create 50 sample data to work with
>> n = 50;
>> x = linspace(0, 2*pi, n);
>> y = sin(x) + 0.1*randn(1,n);
 2. Plot the data to  visualize it
>> plot(x,y,'x');
 3. Create an interpolation of the data, and save it as a function handle:
>> F = griddedInterpolant(x,y);
>> fun = @(t) F(t)
 4. Plot the function to visualize:
>> plot(x, fun(x))
 5. Integrate the function with respect to x:
>> q = integral(fun, x(1), x(end))
 

Più risposte (0)

Categorie

Scopri di più su MATLAB in Help Center e File Exchange

Tag

Non è stata ancora inserito alcun tag.

Prodotti


Release

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by