Visualize a live stream of several plots, scrolling horizontally to keep a fixed window of data.
In order to only show a fixed window of data, this example creates a blueprint that uses
the time_ranges
parameter of the TimeSeriesView
blueprint type.
We dynamically create a TimeSeriesView
for each plot we want to show, so that we can
set the time_ranges
. The start of the visible time range is set to the current time
minus the window size, and the end is set to the current time.
rr.send_blueprint(
rrb.Grid(
contents=[
rrb.TimeSeriesView(
origin=plot_path,
time_ranges=[
rrb.VisibleTimeRange(
"time",
start=rrb.TimeRangeBoundary.cursor_relative(seconds=-args.window_size),
end=rrb.TimeRangeBoundary.cursor_relative(),
)
],
plot_legend=rrb.PlotLegend(visible=False),
)
for plot_path in plot_paths
]
),
)
To run this example, make sure you have the Rerun repository checked out and the latest SDK installed:
# Setup
pip install --upgrade rerun-sdk # install the latest Rerun SDK
git clone git@github.com:rerun-io/rerun.git # Clone the repository
cd rerun
git checkout latest # Check out the commit matching the latest SDK release
Install the necessary libraries specified in the requirements file:
pip install -e examples/python/live_scrolling_plot
Then, simply execute the main Python script:
python -m live_scrolling_plot