Change size 3D matrix
이전 댓글 표시
Hi, I have a 3D matrix defined as: EP(N,k,r) and I want to plot its values as different surfaces at constant N. So I tried to plot this matrix in this way:
col=hsv(N);
figure
hold on
for f=1:N
surf(vector_1,vector_2,EP(f,:,:),'Color',col(f,:,:));
legendInfo{f} = [num2str(Temp(f)-273.15) ' °C'];
end
legend(legendInfo)
but it doesn't work. It seems I can only plot surfaces at constant r! So now I want to try to plot a new matrix in the form (k,r,N).
How can I change the dimension of matrix EP(N,k,r) (and so its values inside) in this form: EP_1(k,r,N)?
댓글 수: 6
darova
2019년 11월 2일
You want to plot slices of a volume?
Francesco Guaresi
2019년 11월 2일
darova
2019년 11월 2일
What about slice or volumeslice?
Francesco Guaresi
2019년 11월 2일
편집: Francesco Guaresi
2019년 11월 2일
the cyclist
2019년 11월 2일
When you say, "it doesn't work", what do you mean, specifically? Do you mean that the code runs, but gives an unexpected result, or that the code does not run, and gives an error? If that latter, please post the complete error message.
Francesco Guaresi
2019년 11월 2일
편집: Francesco Guaresi
2019년 11월 2일
답변 (1개)
the cyclist
2019년 11월 2일
I think what you want is to use
permute(EP(f,:,:),[2 3 1])
as the input, instead of just EP(f,:,:), so that you have a 2-d matrix, rather than a 3-d (in which the first dimension has length 1).
댓글 수: 6
Francesco Guaresi
2019년 11월 2일
the cyclist
2019년 11월 2일
Can you upload the variables that you are using to make the plot, in a *.mat file?
Francesco Guaresi
2019년 11월 2일
the cyclist
2019년 11월 2일
MATLAB seems to have chosen a poor default view, which fails to illustrate the 3-D nature of the plot. Try adding
view(45,45)
after the plot, and you'll see something closer to what you expect.
Francesco Guaresi
2019년 11월 2일
the cyclist
2019년 11월 2일
The surf command takes a fourth argument, for the color. You could write your loop in a way that uses a different color for each loop iteration.
카테고리
도움말 센터 및 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!

