# How to plot 3-D grid data in scatter plot?

조회 수: 8(최근 30일)
Ferry Nieuwland 2020년 10월 13일
편집: Jorg Herwanger 2022년 1월 14일
Hello Community,
I have 2 datasets from a 3-D simulation model. I can easily read these datasets into Matlab and see the data. I now want to plot these 2 datasets on a scatter plot. I am struggling to get this data plotted.
I load the grid with:
A =
struct with fields:
Node: [1×1 struct]
Same for 2nd dataset.
When I do:
>> plot(A.Node.Value,B.Node.Value)
Error using plot
Data cannot have more than 2 dimensions.
And this is where I am stuck. Any suggestion what I am doing wrong or what I need to do to plot these 2 datasets? I have attached the 2 datasets.
Thanks,
Ferry
##### 댓글 수: 1표시숨기기 없음
Jorg Herwanger 2021년 8월 17일
편집: Jorg Herwanger 2022년 1월 14일
You can reshape both 3-D arrays into vectors of length nx*ny*nz.
PERM_Vector = reshape(PERM.Node.Value,[51*107*57,1,1])
PHIE_Vector = reshape(PHIE.Node.Value,[51*107*57,1,1])
plot(PHIE_Vector,PERM_Vector)
In the example, I get the dimensions of the 3D array (51 x 107 x 57) using size(PERM.Node.Value).
I think I know what you want to do: you can now establish a relationship between PHIE and PERM from the crossplot.

댓글을 달려면 로그인하십시오.

### 채택된 답변

KSSV 2020년 10월 13일
편집: KSSV 2020년 10월 13일
I think your mat files has 3D matrices. You need to use cpcolor or surf to plot them.
A = Node.Value ;
[m,n,p] = size(A) ;
for i = 1:p
pcolor(A(:,:,i))
colorbar
drawnow
end
If you have x, y you can provide them in pcolor.
##### 댓글 수: 2표시숨기기 이전 댓글 수: 1
KSSV 2020년 10월 13일
What do you mean by cross plot? Won't surf/ pcolor work for you?
In case are you looking to plot a slice..have a look on slice function.

댓글을 달려면 로그인하십시오.

### 추가 답변(1개)

Ferry Nieuwland 2020년 10월 13일
Hello,
The A matrix is made up of 51 x 107 x 51 datapoints. The B matrix has same size, 51 x 107 x 51 datapoints. Point A(1,1,1) correlates to point B(1,1,1) , etc.
I want to create a plot where all A points are plotted on X-axis and all corresponding B values on the Y-axis. That is what I am trying to do: to investigate the correlation between these datasets. The slice and surf function did not help here.
Any suggestion how to do this?
Thanks,
Ferry

댓글을 달려면 로그인하십시오.

### Community Treasure Hunt

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

Start Hunting!