in data_measurements/lengths/lengths.py [0:0]
def run_DMT_processing(self):
"""
Gets data structures for the figure, table, and measurements.
"""
# First look to see what we can load from cache.
if self.use_cache:
logs.info("Trying to load from cache...")
# Defines self.lengths_df, self.length_stats_dict, self.fig_lengths
# This is the table, the dict of measurements, and the figure
self.load_lengths_cache()
# Sets the measurements as attributes of the DMT object
self.set_attributes()
# If we do not have measurements loaded from cache...
if not self.length_stats_dict and not self.load_only:
logs.info("Preparing length results")
# Compute length statistics. Uses the Lengths class.
self.lengths_obj = self._prepare_lengths()
# Dict of measurements
self.length_stats_dict = self.lengths_obj.length_stats_dict
# Table of text and lengths
self.lengths_df = self.lengths_obj.lengths_df
# Sets the measurements in the length_stats_dict
self.set_attributes()
# Makes the figure
self.fig_lengths = make_fig_lengths(self.lengths_df)
# Finish
if self.save:
logs.info("Saving results.")
self._write_lengths_cache()
if exists(self.lengths_fig_png_fid):
# As soon as we have a figure, we redefine it as an image.
# This is a hack to handle a UI display error (TODO: file bug)
self.fig_lengths = Image.open(self.lengths_fig_png_fid)