How to interpolate between multiple contour plots?

18 次查看(过去 30 天)
l have 3 contour plots for 3 values of "f" like one below. Each is plotted with respect to data from "f"; data of the first plot is coming from an Excel file, and the other two comes from different Excel files. Assume the values of f are 1,2,3. I have data for these exact values (1,2,3), but not for the intermediate values. How do l interpolate it to have specific data for the value of f (i.e. f=2.6)?
Thanks in advance!

采纳的回答

Cris LaPierre
Cris LaPierre 2023-12-12
You could probably use interp3 if you concatenate all your 2D matrices together in the 3rd dimension.
See here.
f1 = [1 2 3 ; 4 5 6];
f2 = [10 20 30 ; 40 50 60];
f3 = [100 200 300 ; 400 500 600];
F = cat(3,f1,f2,f3);
x = 1:size(F,2);
y = 1:size(F,1);
f2_6 = interp3(F,x,y',2.6)
f2_6 = 2×3
64.0000 128.0000 192.0000 256.0000 320.0000 384.0000
  6 个评论
piston_pim_offset
piston_pim_offset 2023-12-13
编辑:piston_pim_offset 2023-12-13
I wish a can share it, but it is not possible. I made Zdata as 25x46x5, implemented interp3, and got desired results. Thanks for your valuable comments.
But now I am not able to plot this data as contours; trying contour3 but it gives error. Do you have any idea for plotting this type of data? (contour(f_1,f_2,f_3) did not work).
Cris LaPierre
Cris LaPierre 2023-12-13
编辑:Cris LaPierre 2023-12-13
Extract the 'sheet' you want and just plot that.
In my example, I would use contour(f2_6)

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Contour Plots 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by