tseda.visualization.series_visualizer module

Plotly-based visualizers for raw and segmented time-series data.

class tseda.visualization.series_visualizer.SeriesVisualizer(series: pandas.Series, title: str = 'Signal Visualization')[source]

Bases: object

Interactive scatter and LOWESS-smoothed visualizations for a single time series.

Convert the input series to a two-column DataFrame for plotting.

Parameters:
  • series – Timestamp-indexed numeric series.

  • title – Figure title used by visualizer methods.

__init__(series: pandas.Series, title: str = 'Signal Visualization') None[source]

Convert the input series to a two-column DataFrame for plotting.

Parameters:
  • series – Timestamp-indexed numeric series.

  • title – Figure title used by visualizer methods.

getVisualization() plotly.graph_objects.Figure[source]

Create an interactive scatter plot coloured by signal value.

Returns:

Plotly figure object for the raw signal visualization.

calc_epoch(ts: numpy.datetime64 = 10) float[source]

Convert a datetime64 value to fractional years since the Unix epoch.

Parameters:

ts – Datetime64 scalar to convert.

Returns:

Floating-point year representation.

calc_dates(ts: numpy.datetime64) numpy.ndarray[source]

Format a datetime64 value as an ISO 8601 date string.

Parameters:

ts – Datetime64 scalar to format.

Returns:

Date string in YYYY-MM-DD format.

LowessVisualizer(frac: float = 0.05) plotly.graph_objects.Figure[source]

Return a LOWESS-smoothed line plot.

Parameters:

frac – Fraction of the data used when estimating each y-value (see statsmodels.nonparametric.lowess).

Returns:

Plotly line figure of the smoothed signal.

class tseda.visualization.series_visualizer.SegmentedSeriesVisualizer(df: pandas.DataFrame, title: str = 'Signal Visualization')[source]

Bases: SeriesVisualizer

Visualizer for change-point segmented time-series DataFrames.

Store the pre-segmented DataFrame for plotting.

Parameters:
  • df – DataFrame with at least date, signal, and segment columns.

  • title – Figure title.

__init__(df: pandas.DataFrame, title: str = 'Signal Visualization') None[source]

Store the pre-segmented DataFrame for plotting.

Parameters:
  • df – DataFrame with at least date, signal, and segment columns.

  • title – Figure title.

getVisualization() plotly.graph_objects.Figure[source]

Create a segmented line plot coloured by segment label.

Returns:

Plotly figure object showing segment-wise signal trajectories.