Plotting a 3D surface
조회 수: 2 (최근 30일)
이전 댓글 표시
Hello everyone, I am trying to plot a 3D surface and colouring it according to the values of a 4th variable (vector). This vector contains the values of the 4th variable for each node of the surface. For instance:
% Surface definition (9 elements, 16 *nodes*)
x = linspace(0,1,3);
y = linspace(0,1,3)';
[X,Y] = meshgrid(x,y);
Z = (X.^3) - 3*X.*(Y.^2);
% 4th dimension (temperature for each node)
T = [0, 0, 0, 0, 0, 10, 10, 10, 0, 10, 20, 20, 0, 10, 20, 30];
Other possibility would be treating the nodes as voxels and plot each voxel with its corresponding temperature color, but I have not found a way to do it either.
Thank you so much. M.
댓글 수: 0
답변 (1개)
Yuvaraj Venkataswamy
2018년 8월 22일
Try this,
if true
x = linspace(0,1,3);
y = linspace(0,1,3)';
[X,Y] = meshgrid(x,y);
Z = (X.^3) - 3*X.*(Y.^2);
T = [0, 0, 0, 0, 0, 10, 10, 10, 0, 10, 20, 20, 0, 10, 20, 30];
surf(X,Y,Z,T)
colorbar
end
댓글 수: 2
참고 항목
카테고리
Help Center 및 File Exchange에서 Surface and Mesh Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!