フィルターのクリア

Plotting data from a 4D cell.

2 ビュー (過去 30 日間)
ErikaZ
ErikaZ 2018 年 8 月 3 日
編集済み: ErikaZ 2020 年 2 月 19 日
I have a 4D cell with the following sizes A{17,10,16,10}(2,3). However, it only contains data on:
% A{d,sw,hLS,cv}
d= [4 5 6 7 8 9 10 13 17];
sw = [1 2 4 6 8 10];
hLS=[2 4 6 8 10 12 14 16];
cv=1:10;
I would like to plot all the values of
A{4:17,1:10,2:16,1}(1,1)
in a 4D surface where
x= d
y= sw
z= hLS
values of A = color
This is the first time working with 4D cells and I have only plotted 2D plots.
I know there are the commands meshgrid(), surf(), scatter3() but I do not know how to apply them and how to format/extract my data. I was thinking of either doing a slanted/diamond/pryamid surface were hLS =16 is the highest points and hLS = 2 the lowest points. Or a 8 slices for the 8 levels of hLS.
Thanks!
  1 件のコメント
AliAlemana
AliAlemana 2018 年 11 月 14 日
Dear ErikaZ,
did you manage to solve the problem? I have a similar issue and I was wondering if your answer might help me.
Thanks!

サインインしてコメントする。

採用された回答

ErikaZ
ErikaZ 2020 年 2 月 19 日
編集済み: ErikaZ 2020 年 2 月 19 日
% A{d,sw,hLS} A was averaged over cv first
layers=[2 6 10 16];
A([1:3,11,12,14:16],:,:)=[]; A(:,[3,5,7,9],:)=[];
function Plot4D( SGRAM,layers,last_layer)
hls=[1:last_layer];
pi=[1:9];
sw=[1:6];
[SW,PI,HLS] = meshgrid(sw,pi,hls);
SWslice = [];
PIslice = [];
HLSslice = layers;
surfHandless = slice(SW,PI,HLS,SGRAM,SWslice,PIslice,HLSslice);
end

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeInterpolation についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by