topostats.plotting#

Plotting and summary of Statistics

Attributes#

Classes#

TopoSum

Class for summarising grain statistics in plots.

Functions#

create_parser(→ argparse.ArgumentParser)

Create a parser for reading options.

toposum(→ Dict)

Process plotting and summarisation of data.

main([args])

Run Plotting

Module Contents#

topostats.plotting.LOGGER#
topostats.plotting.create_parser() argparse.ArgumentParser#

Create a parser for reading options.

class topostats.plotting.TopoSum(df: pandas.DataFrame = None, base_dir: str | pathlib.Path = None, csv_file: str | pathlib.Path = None, stat_to_sum: str = None, molecule_id: str = 'molecule_number', image_id: str = 'image', hist: bool = True, stat: str = 'count', bins: int = 12, kde: bool = True, cut: float = 20, figsize: tuple = (16, 9), alpha: float = 0.5, palette: str = 'deep', file_ext: str = 'png', output_dir: str | pathlib.Path = '.', var_to_label: dict = None)#

Class for summarising grain statistics in plots.

df#
base_dir#
stat_to_sum#
molecule_id#
image_id#
hist#
bins#
stat#
kde#
cut#
figsize#
alpha#
palette#
file_ext#
output_dir#
var_to_label#
melted_data = None#
summary_data = None#
label = None#
_setup_figure()#

Setup Matplotlib figure and axes.

_outfile(plot_suffix: str) str#

Generate the output file name with the appropriate suffix.

Parameters:

plot_suffix (str) – The suffix to append to the output file.

Returns:

Concanenated string of the outfile and plot_suffix.

Return type:

str

sns_plot() None#

Plot the distribution of one or more statistics as either histogram, kernel density estimates or both. Uses base Seaborn.

sns_violinplot() None#

Violin plot of data.

sns_melt_data() pandas.DataFrame#

Melt a dataframe into long format for plotting with Seaborn.

set_xlim(percent: float = 0.1) None#

Set the range of the x-axis.

Parameters:
  • percent (float) – Percentage of the observed range by which to extend the x-axis. Only used if supplied range is outside the

  • values. (observed)

set_palette()#

Set the color palette.

save_plot(outfile: pathlib.Path) None#

Save the plot to the output_dir

Parameters:

outfile (str) – Output file name to save figure to.

_set_label(var: str)#

Get the label based on the column name(s).

Parameters:

var (str) – The variable for which a label is required.

summarise_by_image()#

Summarise statistics by image.

topostats.plotting.toposum(config: dict) Dict#

Process plotting and summarisation of data.

Parameters:

config (dict) – Dictionary of summarisation options.

Returns:

Dictionary of nested dictionaries. Each variable has its own dictionary with keys ‘dist’ and ‘violin’ which

contain distribution like plots and violin plots respectively (if the later are required). Each ‘dist’ and

’violin’ is itself a dictionary with two elements ‘figures’ and ‘axes’ which correspond to MatplotLib ‘fig’ and ‘ax’ for that plot.

Return type:

Dict

topostats.plotting.main(args=None)#

Run Plotting