ZeitgeberPlotter#

class neurodent.visualization.ZeitgeberPlotter(data, features: list[str] | None = None, aggregate_config: dict | None = None)[source]#

Bases: object

Class for generating, styling, and saving Zeitgeber temporal plots.

Can be initialized with either: - A list of ZeitgeberAnalysisResult objects (ZARs) - A pre-aggregated pandas DataFrame

Parameters:
  • data – Either a list of ZARs or a DataFrame containing zeitgeber-processed data.

  • features – List of features to extract (only used if data is list of ZARs).

  • aggregate_config – Optional config for aggregation (only used if data is list of ZARs).

Examples

# From ZARs (interactive use) zars = [ZeitgeberAnalysisResult(war1, **config), …] plotter = ZeitgeberPlotter(zars, features=[“logpsdband”, “logrms”])

# From DataFrame (workflow use) df = pd.read_pickle(“zeitgeber_features.pkl”) plotter = ZeitgeberPlotter(df)

__init__(data, features: list[str] | None = None, aggregate_config: dict | None = None)[source]#
plot_feature(feature, output_path, figsize, dpi=300)[source]#

Create and save a zeitgeber plot for a single feature.

Parameters:
  • feature (str) – Feature column name.

  • output_path (Path) – Path to save the figure.

  • figsize (list) – Figure size [width, height].

  • dpi (int) – DPI for the saved figure.