How can I do integral from discrete data points?
16 views (last 30 days)
Show older comments
MathWorks Support Team
on 24 Jan 2018
Answered: MathWorks Support Team
on 23 Feb 2018
I have data "x" and "y" stored as arrays in MATLAB. How can I evaluate the area under the curve just from my data?
Accepted Answer
MathWorks Support Team
on 24 Jan 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))
0 Comments
More Answers (0)
See Also
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!