Filter löschen
Filter löschen

Divide y values of two graph?

3 Ansichten (letzte 30 Tage)
Muhammad Rizki Nasution
Muhammad Rizki Nasution am 20 Jun. 2018
Kommentiert: Alireza Qaderi am 3 Feb. 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 Kommentar
Ankita Bansal
Ankita Bansal am 20 Jun. 2018
Your question is a bit unclear. Can you give more information?

Melden Sie sich an, um zu kommentieren.

Akzeptierte Antwort

Sayyed Ahmad
Sayyed Ahmad am 20 Jun. 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 Kommentare
Muhammad Rizki Nasution
Muhammad Rizki Nasution am 20 Jun. 2018
thanks, it works
Alireza Qaderi
Alireza Qaderi am 3 Feb. 2021
Great

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Steven Yeh
Steven Yeh am 20 Jun. 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.

Kategorien

Mehr zu Line Plots finden Sie in Help Center und File Exchange

Produkte


Version

R2017b

Community Treasure Hunt

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

Start Hunting!

Translated by