Minor bugfixes, coding inconsistency fixes and aesthetic changes.

This commit is contained in:
Karthik 2025-10-15 18:15:12 +02:00
parent e671d12969
commit c24ab3e994
6 changed files with 68 additions and 33 deletions

View File

@ -155,7 +155,8 @@ Plotter.plotSpectralDistributionCumulants(results, ...
'FontSize', 14, ...
'FigNum', 3, ...
'SkipSaveFigures', false, ...
'SaveFileName', 'SpectralCumulants.fig');
'SaveFileName', 'SpectralCumulants.fig', ...
'SaveDirectory', options.saveDirectory);
%% ------------------ 4. Fit shifted Angular Spectral Distribution Curves ------------------
[fitResults, rawCurves] = Analyzer.fitTwoGaussianCurvesToAngularSpectralDistribution(...
@ -242,6 +243,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'A2', ...
'FigNum', 4, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakAmplitudePDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -259,6 +261,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'mu2', ...
'FigNum', 5, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakPositionPDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -276,6 +279,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'sigma2', ...
'FigNum', 6, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakWidthPDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -333,31 +337,41 @@ for i = 1:N_params
end
end
% --- Plot using plotMeanWithSE ---
% --- Plot peak amplitude mean with SEM ---
Plotter.plotMeanWithSE(scan_reference_values, amp2_vals, ...
'Title', options.titleString, ...
'XLabel', '\alpha (degrees)', ...
'YLabel', 'Secondary peak amplitude', ...
'FigNum', 7, ...
'FontName', options.font, ...
'FontSize', 16);
'FontSize', 16, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakAmplitudeMeanWithSEM.fig', ...
'SaveDirectory', options.saveDirectory);
% --- Plot using plotMeanWithSE ---
% --- Plot peak position mean with SEM ---
Plotter.plotMeanWithSE(scan_reference_values, mu2_vals, ...
'Title', options.titleString, ...
'XLabel', '\alpha (degrees)', ...
'YLabel', 'Secondary peak position (\theta, rad)', ...
'FigNum', 8, ...
'FontName', options.font, ...
'FontSize', 16);
'FontSize', 16, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakPositionMeanWithSEM.fig', ...
'SaveDirectory', options.saveDirectory);
% --- Plot peak width mean with SEM ---
Plotter.plotMeanWithSE(scan_reference_values, sigma2_vals, ...
'Title', options.titleString, ...
'XLabel', '\alpha (degrees)', ...
'YLabel', 'Secondary peak width (\sigma, rad)', ...
'FigNum', 9, ...
'FontName', options.font, ...
'FontSize', 16);
'FontSize', 16, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakWidthMeanWithSEM.fig', ...
'SaveDirectory', options.saveDirectory);
%% Inspect individual realizations of a single parameter

View File

@ -117,14 +117,13 @@ analysis_results = Analyzer.analyzeG2Structures(g2_analysis_results, o
options.skipLivePlot = true;
options.skipSaveFigures = true;
saveDirectory = 'C:\Users\Karthik-OfficePC\Documents\GitRepositories\Calculations\Data-Analyzer\+Scripts';
Plotter.plotODG2withAnalysis(od_imgs, scan_parameter_values, g2_analysis_results, analysis_results, options, ...
'FontName', options.font, ...
'FontSize', 14, ...
'ShowOverlays', true, ...
'RepsPerPage', 5, ... % paginate 10 repetitions per figure
'SaveDirectory', saveDirectory, ...
'RepsPerPage', 5, ...
'SaveDirectory', options.saveDirectory , ...
'SkipLivePlot', options.skipLivePlot, ...
'SkipSaveFigures', options.skipSaveFigures);
@ -138,7 +137,7 @@ Plotter.plotMeanWithSE(scan_parameter_values, analysis_results.anisotropy_vals,
'FigNum', 1, ...
'FontName', options.font, ...
'SaveFileName', 'RadialSpectralContrast.fig', ...
'SaveDirectory', pwd, ... % save figures inside dataset-specific folder
'SaveDirectory', options.saveDirectory , ...
'SkipSaveFigures', options.skipSaveFigures);
%% Plot distribution of anisotropy
@ -154,7 +153,7 @@ Plotter.plotPDF(grouped_data, ...
'FontName', options.font, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'PDF_MaxG2AcrossTransition.fig', ...
'SaveDirectory', pwd, ...
'SaveDirectory', options.saveDirectory , ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
'DataRange', [0 10], ...

View File

@ -201,6 +201,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'A2', ...
'FigNum', 4, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakAmplitudePDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -218,6 +219,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'mu2', ...
'FigNum', 5, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakPositionPDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -234,6 +236,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'sigma2', ...
'FigNum', 6, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakWidthPDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -252,6 +255,9 @@ Plotter.plotSecondaryGaussianRange(fitResults, scan_reference_values, ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
'Colormap', @Colormaps.coolwarm, ...
'OverlayMeanSEM', true);
'OverlayMeanSEM', true, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryGaussianRange.fig', ...
'SaveDirectory', options.saveDirectory);

View File

@ -155,7 +155,8 @@ Plotter.plotSpectralDistributionCumulants(results, ...
'FontSize', 14, ...
'FigNum', 3, ...
'SkipSaveFigures', false, ...
'SaveFileName', 'SpectralCumulants.fig');
'SaveFileName', 'SpectralCumulants.fig', ...
'SaveDirectory', options.saveDirectory);
%% ------------------ 4. Fit shifted Angular Spectral Distribution Curves ------------------
[fitResults, rawCurves] = Analyzer.fitTwoGaussianCurvesToAngularSpectralDistribution(...
@ -242,6 +243,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'A2', ...
'FigNum', 4, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakAmplitudePDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -259,6 +261,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'mu2', ...
'FigNum', 5, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakPositionPDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -276,6 +279,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'sigma2', ...
'FigNum', 6, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakWidthPDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -333,31 +337,41 @@ for i = 1:N_params
end
end
% --- Plot using plotMeanWithSE ---
% --- Plot peak amplitude mean with SEM ---
Plotter.plotMeanWithSE(scan_reference_values, amp2_vals, ...
'Title', options.titleString, ...
'XLabel', '\alpha (degrees)', ...
'YLabel', 'Secondary peak amplitude', ...
'FigNum', 7, ...
'FontName', options.font, ...
'FontSize', 16);
'FontSize', 16, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakAmplitudeMeanWithSEM.fig', ...
'SaveDirectory', options.saveDirectory);
% --- Plot using plotMeanWithSE ---
% --- Plot peak position mean with SEM ---
Plotter.plotMeanWithSE(scan_reference_values, mu2_vals, ...
'Title', options.titleString, ...
'XLabel', '\alpha (degrees)', ...
'YLabel', 'Secondary peak position (\theta, rad)', ...
'FigNum', 8, ...
'FontName', options.font, ...
'FontSize', 16);
'FontSize', 16, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakPositionMeanWithSEM.fig', ...
'SaveDirectory', options.saveDirectory);
% --- Plot peak width mean with SEM ---
Plotter.plotMeanWithSE(scan_reference_values, sigma2_vals, ...
'Title', options.titleString, ...
'XLabel', '\alpha (degrees)', ...
'YLabel', 'Secondary peak width (\sigma, rad)', ...
'FigNum', 9, ...
'FontName', options.font, ...
'FontSize', 16);
'FontSize', 16, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakWidthMeanWithSEM.fig', ...
'SaveDirectory', options.saveDirectory);
%% Inspect individual realizations of a single parameter

View File

@ -97,7 +97,7 @@ end
[od_imgs, scan_parameter_values, scan_reference_values, file_list] = Helper.collectODImages(options);
%% Conduct correlation analysis
options.skipLivePlot = true;
g2_analysis_results = Analyzer.conductCorrelationAnalysis(od_imgs, scan_parameter_values, options);
%% Analyze G2 matrices
@ -107,11 +107,7 @@ options.roi.center = [3, 3]; % center of ROI in µm (x0, y0)
options.roi.size = [3, 11]; % width and height in µm
options.roi.angle = pi/4; % rotation angle (radians, CCW)
options.threshold = 0.85;
options.deviationThreshold = 0.30;
options.minEllipseFraction = 0.30;
options.angleLimit = deg2rad(45);
options.angleTolerance = deg2rad(5);
options.fitDeviationThreshold = 0.9;
% Plot control
options.skipLivePlot = true;
@ -121,13 +117,13 @@ analysis_results = Analyzer.analyzeG2Structures(g2_analysis_results, o
options.skipLivePlot = true;
options.skipSaveFigures = true;
saveDirectory = 'C:\Users\Karthik-OfficePC\Documents\GitRepositories\Calculations\Data-Analyzer\+Scripts';
Plotter.plotODG2withAnalysis(od_imgs, scan_parameter_values, g2_analysis_results, analysis_results, options, ...
'FontName', options.font, ...
'FontSize', 14, ...
'ShowOverlays', true, ...
'RepsPerPage', 5, ... % paginate 10 repetitions per figure
'SaveDirectory', saveDirectory, ...
'RepsPerPage', 5, ...
'SaveDirectory', options.saveDirectory , ...
'SkipLivePlot', options.skipLivePlot, ...
'SkipSaveFigures', options.skipSaveFigures);
@ -135,13 +131,13 @@ Plotter.plotODG2withAnalysis(od_imgs, scan_parameter_values, g2_analysis_results
Plotter.plotMeanWithSE(scan_parameter_values, analysis_results.anisotropy_vals, ...
'Title', options.titleString, ...
'YLim', [0,10], ...
'YLim', [0,6], ...
'XLabel', '\alpha (degrees)', ...
'YLabel', 'Anisotropy of correlation peaks', ...
'FigNum', 1, ...
'FontName', options.font, ...
'SaveFileName', 'RadialSpectralContrast.fig', ...
'SaveDirectory', pwd, ... % save figures inside dataset-specific folder
'SaveDirectory', options.saveDirectory , ...
'SkipSaveFigures', options.skipSaveFigures);
%% Plot distribution of anisotropy
@ -157,10 +153,10 @@ Plotter.plotPDF(grouped_data, ...
'FontName', options.font, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'PDF_MaxG2AcrossTransition.fig', ...
'SaveDirectory', pwd, ...
'SaveDirectory', options.saveDirectory , ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
'DataRange', [0 15], ...
'DataRange', [0 10], ...
'Colormap', @Colormaps.coolwarm, ...
'XLim', [min(scan_reference_values) max(scan_reference_values)]);
@ -188,4 +184,4 @@ function groupedData = groupDataByScan(scan_values, data_values)
groupedData{i} = data_values(idx == i);
end
end
end
end

View File

@ -201,6 +201,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'A2', ...
'FigNum', 4, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakAmplitudePDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -218,6 +219,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'mu2', ...
'FigNum', 5, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakPositionPDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -234,6 +236,7 @@ Plotter.plotFitParameterPDF(fitResults, scan_reference_values, 'sigma2', ...
'FigNum', 6, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryPeakWidthPDF.fig', ...
'SaveDirectory', options.saveDirectory, ...
'PlotType', 'histogram', ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
@ -252,6 +255,9 @@ Plotter.plotSecondaryGaussianRange(fitResults, scan_reference_values, ...
'NumberOfBins', 20, ...
'NormalizeHistogram', true, ...
'Colormap', @Colormaps.coolwarm, ...
'OverlayMeanSEM', true);
'OverlayMeanSEM', true, ...
'SkipSaveFigures', options.skipSaveFigures, ...
'SaveFileName', 'SecondaryGaussianRange.fig', ...
'SaveDirectory', options.saveDirectory);