Please make sure you are familiar with the SIP process documented here. The SIP will be numbered by a committer upon acceptance.

[SIP] Proposal for Timeline Chart Visualization

Motivation

Apache Superset currently lacks support for timeline-based visualizations, which are essential for analyzing event sequences and durations across a horizontal time axis.

These visualizations are widely used in: - logistics operations tracking, - user or system activity timelines, - manufacturing and process monitoring, - operations and delivery flow visualization.

Current chart types such as bar, Gantt-like hacks, or boxplots do not sufficiently support the temporal range model and the required UI features (scrolling, zooming, duration visualization).

Introducing a native Timeline Chart will address this gap, making Superset more suitable for operational dashboards where event flow over time is critical.

Proposed Change

I propose adding a new visualization plugin: Timeline Chart, built on Apache ECharts.

Key features include: - Event durations represented as horizontal bars on a continuous time axis. - Category-based vertical grouping. - Fixed left/right time boundaries, enabling analysts to compare time intervals across days (e.g., 08:00:00–22:00:00). - Support for nested subcategories via a dimension field. - Zoom and scroll support via ECharts’ native interaction model.

I used this example to implement plugin. - ECharts Custom Timeline Demo

How it looks in my implementation:

Image Image

New or Changed Public Interfaces

  • A new chart plugin under plugin-chart-echarts
  • New customization controls in the Explore UI:
  • Time range bounds (left/right)
  • Expected input data format:
  • start_time, end_time (timestamps) for X axis
  • y_axis (categories)
  • dimension (optional) for legend

New dependencies

No.

Migration Plan and Compatibility

  • No database migrations required.
  • The plugin is fully optional and does not affect backward compatibility.
  • URLs and saved charts that use this visualization will remain valid once the plugin is registered.

Rejected Alternatives

  • Using iframe-based external dashboards: rejected due to poor integration and limited control.

Comment From: rusackas

I don't see a DISCUSS thread on the dev@ mailing list. You'll need to do that, or this may eventually be closed as abandoned.

Comment From: rusackas

Every plugin we add to the repo needs to be maintained/supported by the community. If you want to open a PR to illustrate how this all works, we can take a look, but otherwise unless there's sufficient community support here, we might want to wait (some number of months) until the Extensions architecture settles. Right now, you can build this on your own repo and use it in your own Superset instance, and add it to the Third Party Plugins Directory. With sufficient support, I'm happy to put this up for a VOTE.

Comment From: Quatters

I'll try to open a PR soon.