Skip to content

Columnar API

rerun

class TimeNanosColumn

Bases: TimeColumnLike

A column of time values that are represented as integer nanoseconds.

Columnar equivalent to rerun.set_time_nanos.

def __init__(timeline, times)

Create a column of integer nanoseconds time values.

PARAMETER DESCRIPTION
timeline

The name of the timeline.

TYPE: str

times

An iterable of integer nanosecond time values.

TYPE: Iterable[int]

def timeline_name()

Returns the name of the timeline.

class TimeSecondsColumn

Bases: TimeColumnLike

A column of time values that are represented as floating point seconds.

Columnar equivalent to rerun.set_time_seconds.

def __init__(timeline, times)

Create a column of floating point seconds time values.

PARAMETER DESCRIPTION
timeline

The name of the timeline.

TYPE: str

times

An iterable of floating point second time values.

TYPE: Iterable[float]

def timeline_name()

Returns the name of the timeline.

class TimeSequenceColumn

Bases: TimeColumnLike

A column of time values that are represented as an integer sequence.

Columnar equivalent to rerun.set_time_sequence.

def __init__(timeline, times)

Create a column of integer sequence time values.

PARAMETER DESCRIPTION
timeline

The name of the timeline.

TYPE: str

times

An iterable of integer time values.

TYPE: Iterable[int]

def timeline_name()

Returns the name of the timeline.

def send_columns(entity_path, indexes, columns, recording=None, strict=None)

Send columnar data to Rerun.

Unlike the regular log API, which is row-oriented, this API lets you submit the data in a columnar form. Each TimeColumnLike and ComponentColumn object represents a column of data that will be sent to Rerun. The lengths of all these columns must match, and all data that shares the same index across the different columns will act as a single logical row, equivalent to a single call to rr.log().

Note that this API ignores any stateful time set on the log stream via the rerun.set_time_* APIs. Furthermore, this will not inject the default timelines log_tick and log_time timeline columns.

PARAMETER DESCRIPTION
entity_path

Path to the entity in the space hierarchy.

See https://www.rerun.io/docs/concepts/entity-path for more on entity paths.

TYPE: str

indexes

The time values of this batch of data. Each TimeColumnLike object represents a single column of timestamps. Generally, you should use one of the provided classes: TimeSequenceColumn, TimeSecondsColumn, or TimeNanosColumn.

TYPE: Iterable[TimeColumnLike]

columns

The columns of components to log. Each object represents a single column of data.

In order to send multiple components per time value, explicitly create a ComponentColumn either by constructing it directly, or by calling the .columns() method on an Archetype type.

TYPE: Iterable[ComponentColumn]

recording

Specifies the rerun.RecordingStream to use. If left unspecified, defaults to the current active data recording, if there is one. See also: rerun.init, rerun.set_global_data_recording.

TYPE: RecordingStream | None DEFAULT: None

strict

If True, raise exceptions on non-loggable data. If False, warn on non-loggable data. If None, use the global default from rerun.strict_mode()

TYPE: bool | None DEFAULT: None