%% The code is written by Behnaz Pirzamanbein, bepi@dtu.dk last version 2020.08.04 %% fix the meaure distance plot same xlim and ylim and also caxes samples = {'out_out_CD','out_out_MD','in_in_CD','in_in_MD'}; degree = {'0','45','90','180'}; units = {'pixel','mm','micrometer'}; % choose a unit for measure tf = 0; while tf == 0 [indx,tf] = listdlg('ListString',units,'PromptString','Choose an unit:','SelectionMode','single','InitialValue',1); end unit = units{indx}; flag_save = 1; load_folder = 'Results\measure\'; save_folder = 'Results\measure\'; if ~exist(save_folder,'dir') mkdir(save_folder) end % if you want to run the measure separately you can use the for loop %for i = 1:4 sample = samples{i}; dist0 = load([load_folder,'Dist_',sample,'_0']); dist45 = load([load_folder,'Dist_',sample,'_45']); dist90 = load([load_folder,'Dist_',sample,'_90']); dist180 = load([load_folder,'Dist_',sample,'_180']); if strcmp(unit,'mm') dist0.dist = dist0.dist*4.2/1e3; dist45.dist = dist45.dist*4.2/1e3; dist90.dist = dist90.dist*4.2/1e3; dist180.dist = dist180.dist*4.2/1e3; elseif strcmp(unit,'micrometer') dist0.dist = dist0.dist*4.2; dist45.dist = dist45.dist*4.2; dist90.dist = dist90.dist*4.2; dist180.dist = dist180.dist*4.2; end cax0 = [min(dist0.dist,[],'all'),max(dist0.dist,[],'all')]; lim0 = size(dist0.dist); cax45 = [min(dist45.dist,[],'all'),max(dist45.dist,[],'all')]; lim45 = size(dist45.dist); cax90 = [min(dist90.dist,[],'all'),max(dist90.dist,[],'all')]; lim90 = size(dist90.dist); cax180 = [min(dist180.dist,[],'all'),max(dist180.dist,[],'all')]; lim180 = size(dist180.dist); cax = [min([cax0(1),cax45(1),cax90(1),cax180(1)]),max([cax0(2),cax45(2),cax90(2),cax180(2)])]; lim = [max([lim0(1),lim45(1),lim90(1),lim180(1)]),max([lim0(2),lim45(2),lim90(2),lim180(2)])]; figure subplot(221) imagesc(dist0.dist) ylabel('along the curve') xlim([1,lim(1)]) ylim([1,lim(2)]) caxis(cax) axis off title('0 degree') subplot(222) imagesc(dist45.dist) xlim([1,lim(1)]) ylim([1,lim(2)]) caxis(cax) axis off title('45 degree') subplot(223) imagesc(dist90.dist) xlabel('through slice') ylabel('along the curve') xlim([1,lim(1)]) ylim([1,lim(2)]) caxis(cax) axis off title('90 degree') subplot(224) imagesc(dist180.dist) xlabel('through slice') xlim([1,lim(2)]) ylim([1,lim(1)]) caxis(cax) c = colorbar('southoutside'); c.Label.String = unit; axis off title('180 degree') suptitle_modified(sample,'none') if flag_save saveas(gcf,sprintf('%sDist_%s_%s.png',save_folder,sample,unit)) end %end