Effacer les filtres
Effacer les filtres

Random points on a curve

2 vues (au cours des 30 derniers jours)
Amod
Amod le 24 Sep 2023
I have 2 arrays representing sets of data for velocity (Vx) and time (t) given. I get a curve by simply plotting them against each other. I want to take random points on this curve. How do I do it?

Réponses (2)

Matt J
Matt J le 24 Sep 2023
Youc an interpolate the curve at random points using interp1.

Torsten
Torsten le 24 Sep 2023
mat = load("Vx and t.mat")
t = mat.t;
Vx = mat.Vx;
hold on
plot(t,Vx)
n = 100; % number of random points
r = rand(n,1);
random_values_t = min(t)*r + (max(t)-min(t))*(1-r);
random_values_Vx = interp1(t,Vx,random_values_t);
plot(random_values_t,random_values_Vx,'o','color','k')

Catégories

En savoir plus sur Interpolation dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by