Contourf and Surf with repeated values
6 次查看(过去 30 天)
显示 更早的评论
If I have a matrix (or a .mat file) like in screenshot, so with same ordered values, how can I do plot the third column as Z? The problem is that i can't give the first column as X and the second as Y.
Thank you!
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1233287/image.jpeg)
0 个评论
采纳的回答
Fabio Freschi
2022-12-16
Suppose you have Nx divisions along the variable of the first column and Ny divisions along the variable of the second column. You must reshape the columns of your matrix according to Nx and Ny
clear variables, close all
Nx = 5;
Ny = 6;
% create your matrix with random inputs
x = linspace(0,1,Nx);
y = linspace(1,2,Ny);
[X0,Y0] = meshgrid(x,y);
Z0 = X0.^2-3*X0.*Y0;
M = [X0(:) Y0(:) Z0(:)];
% The engine you want starts here -----
% reshape the columns of the matrix
X = reshape(M(:,1),Ny,Nx);
Y = reshape(M(:,2),Ny,Nx);
Z = reshape(M(:,3),Ny,Nx);
% plot
figure
surf(X,Y,Z);
view([1 1 1])
Hope it helps!
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Contour Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!