Effacer les filtres
Effacer les filtres

Divide y values of two graph?

3 vues (au cours des 30 derniers jours)
Muhammad Rizki Nasution
Muhammad Rizki Nasution le 20 Juin 2018
Commenté : Alireza Qaderi le 3 Fév 2021
i want to divide y values of the orange line by the blue line with the same x value, but x values have different point so they have different matrix size, i'm a noob, could you help me?
  1 commentaire
Ankita Bansal
Ankita Bansal le 20 Juin 2018
Your question is a bit unclear. Can you give more information?

Connectez-vous pour commenter.

Réponse acceptée

Sayyed Ahmad
Sayyed Ahmad le 20 Juin 2018
what about htis?
x=1:20;
x2=1:5:20;
y1=x.^2;
y2=x2.^3-x2.^2+0.5*x2;
plot(x,y1,'b-',x2,y2,'g.-')
y3=interp1(x2,y2,x);
hold on;
plot(x,y1,'b-',x,y3,'r*')
  2 commentaires
Muhammad Rizki Nasution
Muhammad Rizki Nasution le 20 Juin 2018
thanks, it works
Alireza Qaderi
Alireza Qaderi le 3 Fév 2021
Great

Connectez-vous pour commenter.

Plus de réponses (1)

Steven Yeh
Steven Yeh le 20 Juin 2018
You could create a new time series, and use linear interpolation to find corresponding values.
For example:
ax = linspace(0, 10, 20);
ay = ax;
bx = linspace(0, 10, 30);
by = bx/2;
timeSeriesWanted = linspace(0, 10, 1000);
ay_interpolated = interp1(ax, ay, timeSeriesWanted);
by_interpolated = interp1(bx, by, timeSeriesWanted);
ay_dividedBy_by = ay_interpolated ./ by_interpolated;
plot(ax, ay,'*-')
hold on
plot(bx, by,'*-')
plot(timeSeriesWanted, ay_dividedBy_by, '-');
legend('a', 'b', 'a/b with interpolation')
Assuming your original data series are (ax, ay) and (bx, by), you can create new series by calling interp1.
  1 commentaire
Muhammad Rizki Nasution
Muhammad Rizki Nasution le 20 Juin 2018
thanks, it works

Connectez-vous pour commenter.

Catégories

En savoir plus sur Interpolation dans Help Center et File Exchange

Produits


Version

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by