Commit ea294214 authored by Jean-Yves TINEVEZ's avatar Jean-Yves TINEVEZ
Browse files

Methods to plot the distorsion caused by the projection.

parent 3e0f256f
function hts = add_plot_distorsion_area( obj, ax )
%ADD_PLOT_DISTORSION_AREA Add the tissue plot colored with the error on
%cell area caused by the projection.
epicells = obj.epicells;
areas = vertcat( epicells.area );
uncorr_areas = vertcat( epicells.uncorrected_area );
err = 1 - uncorr_areas ./ areas;
hts = add_plot_variable( obj, 100. * err, ax );
end
function hts = add_plot_distorsion_perimeter( obj, ax )
%ADD_PLOT_DISTORSION_PERIMETER Add the tissue plot colored with the error on
%cell perimeter caused by the projection.
epicells = obj.epicells;
perims = vertcat( epicells.perimeter );
uncorr_perims = vertcat( epicells.uncorrected_perimeter );
err = 1 - uncorr_perims ./ perims;
hts = add_plot_variable( obj, 100. * err, ax );
end
......@@ -37,6 +37,9 @@ classdef deproj
% Figure with the cells area and perimeter.
[ hf, ax1, ax2 ] = plot_sizes( obj, scale_bar_length )
% Figure with the error on uncorrected cells area and perimeter.
[ hf, ax1, ax2 ] = plot_distorsions( obj, scale_bar_length )
%% Helpers.
% They are public in case of.
......@@ -78,6 +81,12 @@ classdef deproj
% Add the tissue plot colored with the cell perimeter.
hts = add_plot_perimeter( obj, ax )
% Add the tissue plot colored with the error on cell area caused by the projection.
hts = add_plot_distorsion_area( obj, ax )
% Add the tissue plot colored with the error on cell perimeter caused by the projection.
hts = add_plot_distorsion_perimeter( obj, ax )
end
......
function [ hf, ax1, ax2 ] = plot_distorsions( obj, scale_bar_length )
%PLOT_DISTORSIONS Figure with the error on uncorrected cells area and perimeter.
if nargin < 2
scale_bar_length = 10;
end
hf = figure( 'Position', [ 1204 20 600 650 ] );
ax1 = subplot( 2, 1, 1 );
hold on
axis equal
add_plot_distorsion_area( obj, ax1 );
colorbar
ax2 = subplot( 2, 1, 2 );
hold on
axis equal
add_plot_distorsion_perimeter( obj, ax2 );
colorbar
add_plot_scalebar( obj, scale_bar_length, ax2 );
axis( ax1, 'off' )
axis( ax2, 'off' )
title( ax1, 'Error on cell area (%)', ...
'FontWeight', 'normal', ...
'Interpreter', 'none' )
title( ax2, 'Error on cell perimeter (%)', ...
'FontWeight', 'normal', ...
'Interpreter', 'none' )
linkaxes( [ ax2 ax1 ] )
end
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment