From a81617737334918d4b01e153c9cc737b989e4f0d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jan=20Proch=C3=A1zka?= Date: Thu, 24 Oct 2024 15:05:26 +0200 Subject: [PATCH 1/2] Fix slow receive when using native WebSocket (#7875) --- Cargo.lock | 3 +-- Cargo.toml | 3 +++ 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index f723db98fd95..d9081f07edde 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2348,8 +2348,7 @@ dependencies = [ [[package]] name = "ewebsock" version = "0.7.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "735ef60c8cd338b55f972d66c95558a71298d6f8bce1e1347d4c95b082ab2c37" +source = "git+https://github.com/rerun-io/ewebsock?rev=ac6552ecb70f058d81dd8fafaecd4b1daba24685#ac6552ecb70f058d81dd8fafaecd4b1daba24685" dependencies = [ "document-features", "js-sys", diff --git a/Cargo.toml b/Cargo.toml index ed6f82b13c0c..8a7db8beed90 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -568,3 +568,6 @@ re_arrow2 = { git = "https://github.com/rerun-io/re_arrow2", rev = "e4717d6debc6 # Commit on `main` branch of `re_mp4` re_mp4 = { git = "https://github.com/rerun-io/re_mp4", rev = "7d38361ee5b05f5a2b83a8029057c8a24d2e9023" } + +# Commit on `main` branch of `ewebsock` +ewebsock = { git = "https://github.com/rerun-io/ewebsock", rev = "ac6552ecb70f058d81dd8fafaecd4b1daba24685" } From 3d06b31b68f9e86dbb48a708f6d0f731a4994a56 Mon Sep 17 00:00:00 2001 From: Clement Rey Date: Thu, 24 Oct 2024 15:12:19 +0200 Subject: [PATCH 2/2] Fix all links, backwards compatibly (#7895) --- README.md | 2 +- .../re_remote_store_types_builder/README.md | 4 ++-- crates/store/re_remote_store_types/README.md | 4 ++-- docs/content/concepts/static.md | 4 ++-- docs/content/getting-started/data-out.md | 8 +++---- docs/content/howto/dataframe-api.md | 5 +++++ docs/content/howto/embed-rerun-viewer.md | 5 +++++ docs/content/howto/extend/custom-data.md | 5 +++++ docs/content/howto/extend/extend-ui.md | 5 +++++ docs/content/howto/fixed-window-plot.md | 5 +++++ .../howto/integrations/embed-notebooks.md | 4 ++-- .../howto/integrations/ros2-nav-turtlebot.md | 22 +++++++++---------- docs/content/howto/limit-ram.md | 5 +++++ docs/content/howto/logging/send-columns.md | 2 +- .../howto/logging/shared-recordings.md | 2 +- docs/content/howto/notebook.md | 5 +++++ docs/content/howto/ros2-nav-turtlebot.md | 5 +++++ docs/content/howto/send_columns.md | 5 +++++ docs/content/howto/shared-recordings.md | 5 +++++ docs/content/howto/short-lived-entities.md | 5 +++++ docs/content/howto/using-native-loggers.md | 19 ++++++++++++++++ .../configure-viewer-through-code.md | 6 ++--- .../howto/visualization/fixed-window-plot.md | 2 +- docs/content/reference/dataframes.md | 14 ++++++------ 24 files changed, 111 insertions(+), 37 deletions(-) create mode 100644 docs/content/howto/dataframe-api.md create mode 100644 docs/content/howto/embed-rerun-viewer.md create mode 100644 docs/content/howto/extend/custom-data.md create mode 100644 docs/content/howto/extend/extend-ui.md create mode 100644 docs/content/howto/fixed-window-plot.md create mode 100644 docs/content/howto/limit-ram.md create mode 100644 docs/content/howto/notebook.md create mode 100644 docs/content/howto/ros2-nav-turtlebot.md create mode 100644 docs/content/howto/send_columns.md create mode 100644 docs/content/howto/shared-recordings.md create mode 100644 docs/content/howto/short-lived-entities.md create mode 100644 docs/content/howto/using-native-loggers.md diff --git a/README.md b/README.md index 993b8f6fe6a9..5ae94c682b7b 100644 --- a/README.md +++ b/README.md @@ -19,7 +19,7 @@ It's used in areas like robotics, spatial and embodied AI, generative media, ind Rerun is easy to use! Use the Rerun SDK (available for C++, Python and Rust) to log data like images, tensors, point clouds, and text. Logs are streamed to the Rerun Viewer for live visualization or to file for later use. -You can also query the logged data through [our dataframe API](https://rerun.io/docs/content/howto/dataframe-api). +You can also query the logged data through [our dataframe API](https://rerun.io/docs/howto/dataframe-api). [Get started](#getting-started) in minutes – no account needed. diff --git a/crates/build/re_remote_store_types_builder/README.md b/crates/build/re_remote_store_types_builder/README.md index 615f8490ad09..e5c6423c6616 100644 --- a/crates/build/re_remote_store_types_builder/README.md +++ b/crates/build/re_remote_store_types_builder/README.md @@ -2,8 +2,8 @@ Part of the [`rerun`](https://github.com/rerun-io/rerun) family of crates. -[![Latest version](https://img.shields.io/crates/v/re_remote_store_types_builder.svg)](https://crates.io/crates/re_remote_store_types_builder) -[![Documentation](https://docs.rs/re_remote_store_types_builder/badge.svg)](https://docs.rs/re_remote_store_types_builder) +[![Latest version](https://img.shields.io/crates/v/re_remote_store_types_builder.svg)](https://crates.io/crates/re_remote_store_types_builder?speculative-link) +[![Documentation](https://docs.rs/re_remote_store_types_builder/badge.svg)](https://docs.rs/re_remote_store_types_builder?speculative-link) ![MIT](https://img.shields.io/badge/license-MIT-blue.svg) ![Apache](https://img.shields.io/badge/license-Apache-blue.svg) diff --git a/crates/store/re_remote_store_types/README.md b/crates/store/re_remote_store_types/README.md index 418df5c16895..67bdf092bfe6 100644 --- a/crates/store/re_remote_store_types/README.md +++ b/crates/store/re_remote_store_types/README.md @@ -2,8 +2,8 @@ Part of the [`rerun`](https://github.com/rerun-io/rerun) family of crates. -[![Latest version](https://img.shields.io/crates/v/re_remote_store_types.svg)](https://crates.io/crates/re_remote_store_types) -[![Documentation](https://docs.rs/re_remote_store_types/badge.svg)](https://docs.rs/re_remote_store_types) +[![Latest version](https://img.shields.io/crates/v/re_remote_store_types.svg)](https://crates.io/crates/re_remote_store_types?speculative-link) +[![Documentation](https://docs.rs/re_remote_store_types/badge.svg)](https://docs.rs/re_remote_store_types?speculative-link) ![MIT](https://img.shields.io/badge/license-MIT-blue.svg) ![Apache](https://img.shields.io/badge/license-Apache-blue.svg) diff --git a/docs/content/concepts/static.md b/docs/content/concepts/static.md index 1fa1b2624cf4..ca78b4746ddd 100644 --- a/docs/content/concepts/static.md +++ b/docs/content/concepts/static.md @@ -45,7 +45,7 @@ Similarly, [coordinate systems](spaces-and-transforms.md) or [annotation context ### Memory savings When you store _temporal_ data in Rerun, it is always appended to the existing dataset: there is no such thing as overwriting temporal data. The dataset only grows, it never shrinks. -To compensate for that, the Rerun viewer has a [garbage collection mechanism](../howto/limit-ram) that will drop the oldest data from the store when memory becomes scarce. +To compensate for that, the Rerun viewer has a [garbage collection mechanism](../howto/visualization/limit-ram.md) that will drop the oldest data from the store when memory becomes scarce. For example, the following snippet stores 10 images at index `4` on the `frame` [timeline](timelines.md): @@ -80,7 +80,7 @@ If you were to log the snippet above to a file (using e.g. `rr.save()`), you'd f If you wanted the recording file itself to only contain a single static value, you would need to either: * Stream the data to the viewer, and then save the recording directly out of the viewer using `Menu > Save recording` (or the equivalent palette command). -* Manually recompact your recording using the [Rerun CLI](../reference/cli#rerun-rrd-compact) so that the data overwrite semantics can get appropriately applied, e.g.: `rerun rrd compact -o compacted.rrd myrecording.rrd`. +* Manually recompact your recording using the [Rerun CLI](../reference/cli.md#rerun-rrd-compact) so that the data overwrite semantics can get appropriately applied, e.g.: `rerun rrd compact -o compacted.rrd myrecording.rrd`. ### In the viewer diff --git a/docs/content/getting-started/data-out.md b/docs/content/getting-started/data-out.md index 3e98942e87eb..bbd15edef226 100644 --- a/docs/content/getting-started/data-out.md +++ b/docs/content/getting-started/data-out.md @@ -3,13 +3,13 @@ title: Get data out of Rerun order: 450 --- -At its core, Rerun is a database. The viewer includes the [dataframe view](../reference/types/views/dataframe_view) to explore data in tabular form, and the SDK includes an API to export the data as dataframes from the recording. These features can be used, for example, to perform analysis on the data and send back the results to the original recording. +At its core, Rerun is a database. The viewer includes the [dataframe view](../reference/types/views/dataframe_view.md) to explore data in tabular form, and the SDK includes an API to export the data as dataframes from the recording. These features can be used, for example, to perform analysis on the data and send back the results to the original recording. In this three-part guide, we explore such a workflow by implementing an "open jaw detector" on top of our [face tracking example](https://rerun.io/examples/video-image/face_tracking). This process is split into three steps: -1. [Explore a recording with the dataframe view](data-out/explore-as-dataframe) -2. [Export the dataframe](data-out/export-dataframe) -3. [Analyze the data and send back the results](data-out/analyze-and-send) +1. [Explore a recording with the dataframe view](data-out/explore-as-dataframe.md) +2. [Export the dataframe](data-out/export-dataframe.md) +3. [Analyze the data and send back the results](data-out/analyze-and-send.md) Note: this guide uses the popular [Pandas](https://pandas.pydata.org) dataframe package. The same concept however applies in the same way for alternative dataframe packages such as [Polars](https://pola.rs). diff --git a/docs/content/howto/dataframe-api.md b/docs/content/howto/dataframe-api.md new file mode 100644 index 000000000000..80b0ab657ad5 --- /dev/null +++ b/docs/content/howto/dataframe-api.md @@ -0,0 +1,5 @@ +--- +title: Get data out of Rerun with code +hidden: true +redirect: howto/get-data-out +--- diff --git a/docs/content/howto/embed-rerun-viewer.md b/docs/content/howto/embed-rerun-viewer.md new file mode 100644 index 000000000000..bc20b88bdf87 --- /dev/null +++ b/docs/content/howto/embed-rerun-viewer.md @@ -0,0 +1,5 @@ +--- +title: Embed a Rerun Viewer +hidden: true +redirect: howto/embed-web +--- diff --git a/docs/content/howto/extend/custom-data.md b/docs/content/howto/extend/custom-data.md new file mode 100644 index 000000000000..07cc783f98fd --- /dev/null +++ b/docs/content/howto/extend/custom-data.md @@ -0,0 +1,5 @@ +--- +title: By logging custom data +hidden: true +redirect: howto/logging/custom-data +--- diff --git a/docs/content/howto/extend/extend-ui.md b/docs/content/howto/extend/extend-ui.md new file mode 100644 index 000000000000..515799999307 --- /dev/null +++ b/docs/content/howto/extend/extend-ui.md @@ -0,0 +1,5 @@ +--- +title: By implementing custom visualizations (Rust only) +hidden: true +redirect: howto/visualization/extend-ui +--- diff --git a/docs/content/howto/fixed-window-plot.md b/docs/content/howto/fixed-window-plot.md new file mode 100644 index 000000000000..2a4da7fccfe9 --- /dev/null +++ b/docs/content/howto/fixed-window-plot.md @@ -0,0 +1,5 @@ +--- +title: Create a fixed-window plot +hidden: true +redirect: howto/visualization/fixed-window-plot +--- diff --git a/docs/content/howto/integrations/embed-notebooks.md b/docs/content/howto/integrations/embed-notebooks.md index 3ad932d8ae25..68b4cfc4238b 100644 --- a/docs/content/howto/integrations/embed-notebooks.md +++ b/docs/content/howto/integrations/embed-notebooks.md @@ -26,7 +26,7 @@ This installs both [rerun-sdk](https://pypi.org/project/rerun-sdk/) and [rerun-n When using the Rerun logging APIs, by default, the logged messages are buffered in-memory until you send them to a sink such as via `rr.connect()` or `rr.save()`. -When using Rerun in a notebook, rather than using the other sinks, you have the option to use [`rr.notebook_show()`](https://ref.rerun.io/docs/python/stable/common/initialization_functions/#rerun.notebook_show). This method embeds the [web viewer](./embed-rerun-viewer.md) using the IPython `display` mechanism in the cell output, and sends the current recording data to it. +When using Rerun in a notebook, rather than using the other sinks, you have the option to use [`rr.notebook_show()`](https://ref.rerun.io/docs/python/stable/common/initialization_functions/#rerun.notebook_show). This method embeds the [web viewer](./embed-web.md) using the IPython `display` mechanism in the cell output, and sends the current recording data to it. Once the viewer is open, any subsequent `rr.log()` calls will send their data directly to the viewer, without any intermediate buffering. @@ -74,7 +74,7 @@ rr.notebook_show(width=400, height=400) ## Working with blueprints -[Blueprints](./configure-viewer-through-code.md) can also be used with `notebook_show()` by providing a `blueprint` +[Blueprints](../visualization/configure-viewer-through-code.md) can also be used with `notebook_show()` by providing a `blueprint` parameter. For example diff --git a/docs/content/howto/integrations/ros2-nav-turtlebot.md b/docs/content/howto/integrations/ros2-nav-turtlebot.md index cc0bae8ae12e..aedd1b42478a 100644 --- a/docs/content/howto/integrations/ros2-nav-turtlebot.md +++ b/docs/content/howto/integrations/ros2-nav-turtlebot.md @@ -30,8 +30,8 @@ All of the code for this guide can be found on GitHub in Other relevant tutorials: -- [Python SDK Tutorial](../getting-started/data-in/python.md) -- [Viewer Walkthrough](../getting-started/navigating-the-viewer.md) +- [Python SDK Tutorial](../../getting-started/data-in/python.md) +- [Viewer Walkthrough](../../getting-started/navigating-the-viewer.md) ### ROS 2 & navigation @@ -110,17 +110,17 @@ the environment. If you are familiar with the turtlebot nav example and rviz, this view will likely be familiar: - `map/box` is a placeholder for the map. (This will eventually be a map: [#1531](https://github.com/rerun-io/rerun/issues/1531).) -- `map/robot` is a transform representing the robot pose logged as a rigid [transform3d](../reference/types/archetypes/transform3d.md). -- `map/robot/urdf` contains the `URDF` logged as a [mesh](../reference/types/archetypes/mesh3d.md). -- `map/robot/scan` contains a `LaserScan` msg logged as a [linestrip3d](../reference/types/archetypes/line_strips3d.md). (This will eventually be a +- `map/robot` is a transform representing the robot pose logged as a rigid [transform3d](../../reference/types/archetypes/transform3d.md). +- `map/robot/urdf` contains the `URDF` logged as a [mesh](../../reference/types/archetypes/mesh3d.md). +- `map/robot/scan` contains a `LaserScan` msg logged as a [linestrip3d](../../reference/types/archetypes/line_strips3d.md). (This will eventually be a native type: [#1534](https://github.com/rerun-io/rerun/issues/1534).) -- `map/robot/camera` contains a `CameraInfo` msg logged as a [pinhole](../reference/types/archetypes/pinhole.md) transform. -- `map/robot/camera/img` contains an `Image` msg logged as an [image](../reference/types/archetypes/image.md). -- `map/robot/camera/points` contains a `PointCloud2` msg logged as a [point3d](../reference/types/archetypes/points3d.md). +- `map/robot/camera` contains a `CameraInfo` msg logged as a [pinhole](../../reference/types/archetypes/pinhole.md) transform. +- `map/robot/camera/img` contains an `Image` msg logged as an [image](../../reference/types/archetypes/image.md). +- `map/robot/camera/points` contains a `PointCloud2` msg logged as a [point3d](../../reference/types/archetypes/points3d.md). - `map/points` contains a second copy of `PointCloud2` with a different transform. (This is a workaround until Rerun has support for ROS-style fixed frames [#1522](https://github.com/rerun-io/rerun/issues/1522).) -- `odometry/vel` is a plot of the linear velocity of the robot logged as a [scalar](../reference/types/archetypes/scalar.md). -- `odometry/ang_vel` is a plot of the angular velocity of the robot logged as a [scalar](../reference/types/archetypes/scalar.md). +- `odometry/vel` is a plot of the linear velocity of the robot logged as a [scalar](../../reference/types/archetypes/scalar.md). +- `odometry/ang_vel` is a plot of the angular velocity of the robot logged as a [scalar](../../reference/types/archetypes/scalar.md). ## Code explanation @@ -156,7 +156,7 @@ again. ### TF to rr.Transform3D Next, we need to map the [ROS TF2](https://docs.ros.org/en/humble/Concepts/About-Tf2.html) transforms to the -corresponding [Rerun Transforms](../concepts/spaces-and-transforms.md#space-transformations). +corresponding [Rerun Transforms](../../concepts/spaces-and-transforms.md#space-transformations). In Rerun, each path represents a coordinate frame, so we need to decide which TF frame each path will correspond to. In general, this is the frame_id of the sensor data that will be logged to that diff --git a/docs/content/howto/limit-ram.md b/docs/content/howto/limit-ram.md new file mode 100644 index 000000000000..77d9947a7b20 --- /dev/null +++ b/docs/content/howto/limit-ram.md @@ -0,0 +1,5 @@ +--- +title: Limit memory usage +hidden: true +redirect: howto/visualization/limit-ram +--- diff --git a/docs/content/howto/logging/send-columns.md b/docs/content/howto/logging/send-columns.md index fa606d0a1ee8..2e687a9121ed 100644 --- a/docs/content/howto/logging/send-columns.md +++ b/docs/content/howto/logging/send-columns.md @@ -9,7 +9,7 @@ Sometimes you want to send big chunks of data to Rerun efficiently. To do so, yo `send_columns` lets you efficiently log the state of an entity over time, logging multiple time and component columns in one call. -In contrast to the `log` function, `send_columns` does NOT add any other timelines to the data. Neither the built-in timelines `log_time` and `log_tick`, nor any [user timelines](../concepts/timelines.md). Only the timelines explicitly included in the call to `send_columns` will be included. +In contrast to the `log` function, `send_columns` does NOT add any other timelines to the data. Neither the built-in timelines `log_time` and `log_tick`, nor any [user timelines](../../concepts/timelines.md). Only the timelines explicitly included in the call to `send_columns` will be included. API docs of `send_columns`: * [🌊 C++](https://ref.rerun.io/docs/cpp/stable/classrerun_1_1RecordingStream.html#ad17571d51185ce2fc2fc2f5c3070ad65) diff --git a/docs/content/howto/logging/shared-recordings.md b/docs/content/howto/logging/shared-recordings.md index a4839bf64603..38f51eee5983 100644 --- a/docs/content/howto/logging/shared-recordings.md +++ b/docs/content/howto/logging/shared-recordings.md @@ -5,7 +5,7 @@ order: 100 A common need is to log data from multiple processes and then visualize all of that data as part of a single shared recording. -Rerun has the notion of a [Recording ID](../concepts/apps-and-recordings.md) for that: any recorded datasets that share the same Recording ID will be visualized as one shared dataset. +Rerun has the notion of a [Recording ID](../../concepts/apps-and-recordings.md) for that: any recorded datasets that share the same Recording ID will be visualized as one shared dataset. The data can be logged from any number of processes, whether they run on the same machine or not, or implemented in different programming languages. All that matter is that they share the same Recording ID. diff --git a/docs/content/howto/notebook.md b/docs/content/howto/notebook.md new file mode 100644 index 000000000000..118fb9a2e5ac --- /dev/null +++ b/docs/content/howto/notebook.md @@ -0,0 +1,5 @@ +--- +title: Embed Rerun in notebooks +hidden: true +redirect: howto/integrations/embed-notebook +--- diff --git a/docs/content/howto/ros2-nav-turtlebot.md b/docs/content/howto/ros2-nav-turtlebot.md new file mode 100644 index 000000000000..33f8b7e663ff --- /dev/null +++ b/docs/content/howto/ros2-nav-turtlebot.md @@ -0,0 +1,5 @@ +--- +title: Use Rerun with ROS 2 +hidden: true +redirect: howto/integrations/ros2-nav-turtlebot +--- diff --git a/docs/content/howto/send_columns.md b/docs/content/howto/send_columns.md new file mode 100644 index 000000000000..625264377909 --- /dev/null +++ b/docs/content/howto/send_columns.md @@ -0,0 +1,5 @@ +--- +title: Efficiently log time series data using `send_columns` +hidden: true +redirect: howto/logging/send-columns +--- diff --git a/docs/content/howto/shared-recordings.md b/docs/content/howto/shared-recordings.md new file mode 100644 index 000000000000..3efe4f9b8bb2 --- /dev/null +++ b/docs/content/howto/shared-recordings.md @@ -0,0 +1,5 @@ +--- +title: Share recordings across multiple processes +hidden: true +redirect: howto/logging/shared-recordings +--- diff --git a/docs/content/howto/short-lived-entities.md b/docs/content/howto/short-lived-entities.md new file mode 100644 index 000000000000..46f262345997 --- /dev/null +++ b/docs/content/howto/short-lived-entities.md @@ -0,0 +1,5 @@ +--- +title: Clear out already logged data +hidden: true +redirect: howto/logging/clears +--- diff --git a/docs/content/howto/using-native-loggers.md b/docs/content/howto/using-native-loggers.md new file mode 100644 index 000000000000..bf75732fa33f --- /dev/null +++ b/docs/content/howto/using-native-loggers.md @@ -0,0 +1,19 @@ +--- +title: Integrate Rerun with native loggers +order: 700 +description: How to use the Rerun SDK as a native logger for the host language +--- + +The Rerun SDK implements the native logging interfaces of its supported host languages, allowing you to transparently stream text logs logged with the native APIs into the Rerun Viewer. + +The details of how to achieve that vary language by language, see the snippets below. + +snippet: archetypes/text_log_integration + + + + + + + + diff --git a/docs/content/howto/visualization/configure-viewer-through-code.md b/docs/content/howto/visualization/configure-viewer-through-code.md index c46acdb7c0fe..5ff10d00de1c 100644 --- a/docs/content/howto/visualization/configure-viewer-through-code.md +++ b/docs/content/howto/visualization/configure-viewer-through-code.md @@ -3,7 +3,7 @@ title: Configure the Viewer through code order: 100 --- -As of Rerun 0.15, the state of the [blueprint](../reference/viewer/blueprint.md) can be directly manipulated using the +As of Rerun 0.15, the state of the [blueprint](../../reference/viewer/blueprint.md) can be directly manipulated using the Rerun SDK. In the initial 0.15 release, the APIs are still somewhat limited and only available in the Python SDK. @@ -139,7 +139,7 @@ Because the data in the space-view is relative to the `origin`, the `origin` wil in the blueprint tree, with all entities under the origin shown using relative paths. For Spatial views such as `Spatial2DView` and `Spatial3DView`, the `origin` plays an additional role with respect -to data transforms. All data in the view will be transformed to the `origin` space before being displayed. See [Spaces and Transforms](../concepts/spaces-and-transforms.md) for more information. +to data transforms. All data in the view will be transformed to the `origin` space before being displayed. See [Spaces and Transforms](../../concepts/spaces-and-transforms.md) for more information. For example: @@ -155,7 +155,7 @@ rrb.Blueprint( ### `contents` If you need to further modify the contents of a space view, you can use the `contents` parameter. This parameter is -a list of [entity query expressions](../reference/) that are either included or excluded from the +a list of [entity query expressions](../../reference/) that are either included or excluded from the view. Each entity expressions starts with "+" for inclusion or "-" for an exclusion. The expressions can either be specific entity paths, or may end in a wildcard `/**` to include all entities under a specific subtree. diff --git a/docs/content/howto/visualization/fixed-window-plot.md b/docs/content/howto/visualization/fixed-window-plot.md index c6beb2c598e4..789961f3a35c 100644 --- a/docs/content/howto/visualization/fixed-window-plot.md +++ b/docs/content/howto/visualization/fixed-window-plot.md @@ -3,7 +3,7 @@ title: Visualize fixed-window plots order: 200 --- -As of Rerun 0.16, the [TimeSeriesView](../reference/types/views/time_series_view.md) now supports direct +As of Rerun 0.16, the [TimeSeriesView](../../reference/types/views/time_series_view.md) now supports direct manipulation of the visible time range. This allows you to create a plot that only shows a fixed window of data. ## VisibleTimeRange diff --git a/docs/content/reference/dataframes.md b/docs/content/reference/dataframes.md index e2e83606a7e0..a9349a8cd994 100644 --- a/docs/content/reference/dataframes.md +++ b/docs/content/reference/dataframes.md @@ -7,11 +7,11 @@ Rerun, at its core, is a database. As such, you can always get your data back in This can be achieved in three different ways, depending on your needs: * using the dataframe API, currently available in [Python](https://ref.rerun.io/docs/python/stable/common/dataframe/) and [Rust](https://docs.rs/rerun/latest/rerun/dataframe/index.html), -* using the [blueprint API](../concepts/blueprint) to configure a [dataframe view](types/views/dataframe_view) from code, -* or simply by setting up [dataframe view](types/views/dataframe_view) manually in the UI. +* using the [blueprint API](../concepts/blueprint.md) to configure a [dataframe view](types/views/dataframe_view.md) from code, +* or simply by setting up [dataframe view](types/views/dataframe_view.md) manually in the UI. This page is meant as a reference to get you up and running with these different solutions as quickly as possible. -For an in-depth introduction to the dataframe API and the possible workflows it enables, check out [our Getting Started guide](../getting-started/data-out) or one of the accompanying [How-Tos](../howto/dataframe-api). +For an in-depth introduction to the dataframe API and the possible workflows it enables, check out [our Getting Started guide](../getting-started/data-out) or one of the accompanying [How-Tos](../howto/dataframe-api.md). > We'll need an RRD file to query. Either use one of yours, or grab some of the example ones, e.g.: @@ -34,7 +34,7 @@ Check out the API reference to learn more about all the ways that data can be se ### Using the blueprint API to configure a dataframe view -The following snippet demonstrates how visualize an entire Rerun recording using latest-at (i.e. time-aligned) semantics by displaying the results in a [dataframe view](types/views/dataframe_view): +The following snippet demonstrates how visualize an entire Rerun recording using latest-at (i.e. time-aligned) semantics by displaying the results in a [dataframe view](types/views/dataframe_view.md): snippet: reference/dataframe_view_query @@ -59,15 +59,15 @@ Then log that blueprint file in addition to the data itself: snippet: reference/dataframe_view_query_external Check out the blueprint API and `log_file_from_path` references to learn more: -* [🐍 Python blueprint API reference](https://ref.rerun.io/docs/python/latest/common/blueprint_apis/) -* [🐍 Python `log_file_from_path`](https://ref.rerun.io/docs/python/latest/common/logging_functions/#rerun.log_file_from_path) +* [🐍 Python blueprint API reference](https://ref.rerun.io/docs/python/stable/common/blueprint_apis/) +* [🐍 Python `log_file_from_path`](https://ref.rerun.io/docs/python/stable/common/logging_functions/#rerun.log_file_from_path) * [🦀 Rust `log_file_from_path`](https://docs.rs/rerun/latest/rerun/struct.RecordingStream.html#method.log_file_from_path) * [🌊 C++ `log_file_from_path`](https://ref.rerun.io/docs/cpp/stable/classrerun_1_1RecordingStream.html#a20798d7ea74cce5c8174e5cacd0a2c47) ### Setting up dataframe view manually in the UI -The same [dataframe view](types/views/dataframe_view) shown above can be configured purely from the UI: +The same [dataframe view](types/views/dataframe_view.md) shown above can be configured purely from the UI: