Plotting the integral of a graph using cumtrapz.

20 次查看(过去 30 天)
Hi I'm very new to MATLAB. I am trying to calculate the integral of a plot from my accelerometer data over time to find the graph of velocity over time, and after using cumtrapz it seems data is getting lost or maybe I didn't set it up right. In this case I sampled 2000 points of data from accelerometer but when plotting the integral over X, it only plots the first handful of datapoints instead of all 2000 points. What am I doing wrong here? Also if someone can help me to figure out how to plot the data over actual time in second elapsed (after starting the loop or fisrt data sample), I will greatly appriciate it.
  2 个评论
Torsten
Torsten 2023-6-3
If you set xlim([0.4 60.4]) as you do, you shouldn't wonder that MATLAB only plots up to a1(a) = 60.4 and not till 2000.
Mher
Mher 2023-6-3
I did try doing this xlim([0.0 2000.0]) ylim([-100.0 100.0]), but I'm still getting the same thing. Not only it's plotting few datapoints, values in my matrix are also being updated only up to that amount of datapoints (~60 in this case).

请先登录,再进行评论。

回答(1 个)

Torsten
Torsten 2023-6-3
移动:Matt J 2023-6-3
Then my guess is that some of the x-values (maybe starting around 60) are NaN values. Remove them before applying "cumtrapz".
  1 个评论
Mher
Mher 2023-6-3
移动:Matt J 2023-6-3
Ahhhh, man. Thank you so much. That was the issue! I had bad samples here and there, handfull of NaN values causing the plot to break. Greatly appriciate it!

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Graphics Performance 的更多信息

产品


版本

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by