v2.0.0
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),
)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
decodefunction 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
FoxplotExceptiontoFoxplotError - Breaking: Rename
SeriestoLabeledSeries - Breaking: Rename the front class
FrozenSeriestoSeries - CICD: Update checkout action to v4
- Default constructor of
Foxnow 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
timestampeduPlot argument
Removed
- Breaking: Remove
Fox.freezefunction - Breaking: Remove
Fox.labelsproperty - Breaking: Remove
Fox.read_from_filefunction (moved to constructor) - Breaking: Remove
left_axis_unitargument ofplotfunction - Breaking: Remove
right_axis_unitargument ofplotfunction - Clean up unused internal color picker
