Plotting the integral of a graph using cumtrapz.

14 vues (au cours des 30 derniers jours)
Mher
Mher le 3 Juin 2023
Déplacé(e) : Matt J le 3 Juin 2023
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 commentaires
Torsten
Torsten le 3 Juin 2023
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 le 3 Juin 2023
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).

Connectez-vous pour commenter.

Réponses (1)

Torsten
Torsten le 3 Juin 2023
Déplacé(e) : Matt J le 3 Juin 2023
Then my guess is that some of the x-values (maybe starting around 60) are NaN values. Remove them before applying "cumtrapz".
  1 commentaire
Mher
Mher le 3 Juin 2023
Déplacé(e) : Matt J le 3 Juin 2023
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!

Connectez-vous pour commenter.

Catégories

En savoir plus sur Graphics Performance dans Help Center et File Exchange

Produits


Version

R2023a

Community Treasure Hunt

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

Start Hunting!

Translated by