1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
| % Valeurs arbitraires à afficher
A = rand(5,8,8);
% Couleur = valeur nomrmalisée de chaque voxel dans l'intervalle [1 num_color]
% num_color = nombre de couleurs dans la palette de couleurs de la figure
num_color = 64;
color = floor(1 + (num_color-1) * (A(:)-min(A(:)))./(max(A(:))-min(A(:))));
% Chaque voxel possède 6 facesd de la même couleur :
color = kron(color(:), ones(6,1));
% Génération de la grille des voxels
[x,y,z] = ndgrid(1:size(A,1),1:size(A,2),1:size(A,3));
figure
% Palette de couleur jet
colormap(jet(num_color))
% Création des voxels
voxel_image([x(:) y(:) z(:)], [1 1 1], color);
clim_max = 10;
clim_min = 0;
caxis([clim_min clim_max]);
% Ajout colorbar
c = colorbar;
% Modification des étiquettes de la colorbar en fonction des valeurs de A
yt = get(c, 'ytick');
v = (yt-1)/(num_color-1)*(max(A(:))-min(A(:)))+min(A(:));
set(c, 'yticklabel', sprintf('%.2f\n', v))
view(3)
axis equal tight vis3d |
Partager