Interpolate y-values of two data sets on the same axes

11 views (last 30 days)
Hello,
I am writing a script in which I plot two sets of data on the same axes.
The first set contains data taken with one instrument, and the second contains data from another instrument. The y-axis is "height" and the x-axis is "temperature."
I am plotting the data from 0 to 4000 meters, but since the samples were taken from different instruments, data points do not occur at the exact same heights. Therefore, I am attempting to interpolate the y-variables of each of the two data sets onto the same grid. I do not want to interpolate the x-variables.
I cannot figure out how to properly use the interp function in order to achieve this.
Can anyone help? Please let me know if attaching my code will assist in understanding my question.
Thank you very much!

Accepted Answer

Matt J
Matt J on 12 Jun 2019
Edited: Matt J on 12 Jun 2019
ht1=sortrows([height1(:),temperature1(:)]); %pre-sort
ht2=sortrows([height2(:),temperature2(:)]);
Height=ht1(:,1);
Temperature1=ht1(:,2);
Temperature2=interp1(ht2(:,1),ht2(:,2),Height);
plot(Temperature1,Height,'o',Temperature2,Height,'x')
  2 Comments
Matt J
Matt J on 12 Jun 2019
You're welcome. Please Accept-click the answer, if it resolved your problem.

Sign in to comment.

More Answers (0)

Categories

Find more on 2-D and 3-D Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!