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

2 Stimmen

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

1 Stimme

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 Hilfe-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