Skip to content

v2.0.0

Choose a tag to compare

@stephane-caron stephane-caron released this 21 Apr 11:28
· 31 commits to main since this release
a4c6c53

This release simplifies applying functions to time series:

  • Before: some_function(data.times, data.my.series, *args)
  • After: data.my.series.some_function(*args)

This makes it easier to e.g. plot a series and its derivative:

fox.plot(
     data.observation.servo.left_wheel.torque,
     right=data.observation.servo.left_wheel.torque.low_pass_filter(T=0.05),
)

image

Added

  • Add a Fox.empty() method to start from an empty state
  • CLI: List available functions in the initial prompt
  • Internal: Add reference to time values in each series instance
  • Series: divisions between series and scalar values
  • Series: products between series and scalar values
  • Series: unitary minus operator
  • Top-level decode function to unpack dictionaries from files

Changed

  • Breaking: Function: absolute value moved to Series
  • Breaking: Function: low-pass filter moved to Series
  • Breaking: Function: standard deviation moved to Series
  • Breaking: Function: time-derivative by finite differences moved to Series
  • Breaking: Rename FoxplotException to FoxplotError
  • Breaking: Rename Series to LabeledSeries
  • Breaking: Rename the front class FrozenSeries to Series
  • CICD: Update checkout action to v4
  • Default constructor of Fox now requires a file name or path
  • Update to latest uplot-python API

Fixed

  • Correct some type annotations
  • Make sure time values are scalar timestamps
  • Use correct timestamped uPlot argument

Removed

  • Breaking: Remove Fox.freeze function
  • Breaking: Remove Fox.labels property
  • Breaking: Remove Fox.read_from_file function (moved to constructor)
  • Breaking: Remove left_axis_unit argument of plot function
  • Breaking: Remove right_axis_unit argument of plot function
  • Clean up unused internal color picker