function plot_faces(ng,vF,k,ccB); % plot_faces(ng,vF,k [,ccB]); % % make 1 figure (fig. number = ng) composed of Nface parts % corresponding to level k (enter k=0 if 2D field) of the structured % array "vF": vF.f001 = face 1, vF.f002 = face 2 ... % with color range ccB(1),ccB(2) (default = ccB=[0 0] = no call to caxis) if nargin < 4, ccB=[0 0]; end %- extract list of faces: % convention: faces identificator is "f{n}" (face number n written with 3 digits) listV=fieldnames(vF); listF=[]; for i=1:size(listV,1) cvar=char(listV(i)); if length(cvar) == 4 & strncmpi('f00',cvar,3), if isempty(listF), listF=cvar; else listF=char(listF,cvar); end end end listF=cellstr(listF); Nfaces=size(listF,1); if Nfaces > 6, error([' Nb of faces =',int2str(Nfaces),' > 6 !']) end xyP=zeros(6,4); xyP(1,:)=[0.05 0.05 0.20 0.72]; xyP(2,:)=[0.29 0.05 0.20 0.72]; xyP(3,:)=[0.29 0.80 0.20 0.18]; xyP(4,:)=[0.53 0.05 0.20 0.72]; xyP(5,:)=[0.77 0.05 0.20 0.72]; xyP(6,:)=[0.77 0.80 0.20 0.18]; xyP(3,:)=[0.05 0.80 0.20 0.18]; %- move face 3 in top-left corner figure(ng);clf; for n=1:Nfaces, cvar=char(listF(n)); var=vF.(cvar); if k ~= 0, var=var(:,:,k); end if n > 3, var=fliplr(var'); end %- rotate face 4,5,6 if n == 3, var=flipud(var'); end %- rotate to put face 3 in top-left corner AA=axes('position',xyP(n,:)); imagesc(var'); set(gca,'YDir','normal'); if ccB(1) < ccB(2), caxis(ccB); end end H=colorbar('peer',AA,'North'); set(H,'Position',[xyP(4,1) 0.90 xyP(4,3) 0.020]); return