Divide y values of two graph?
2 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Muhammad Rizki Nasution
il 20 Giu 2018
Commentato: Alireza Qaderi
il 3 Feb 2021
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/191376/image.png)
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 Commento
Risposta accettata
Sayyed Ahmad
il 20 Giu 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 Commenti
Più risposte (1)
Steven Yeh
il 20 Giu 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.
Vedere anche
Categorie
Scopri di più su Interpolation in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!