Skip to content

[SIP - 170] Easy Charts — Lightweight Chart Creation in Dashboards #33448

Open
@amaannawab923

Description

@amaannawab923

Motivation
Creating a chart in Superset currently requires users to go through the full Explore workflow. This process is powerful, but can be cumbersome for casual users or embedded use cases where speed and simplicity are paramount.

There is growing interest in enabling more intuitive, lightweight ways to create and modify charts directly within a dashboard. Alot of people would agree on support for:

Embedding single charts with limited interactivity

Allowing some level of the Explore experience within a dashboard

Supporting inline chart creation for faster prototyping

The “Easy Charts” concept addresses these needs by enabling users to create simple, metric-driven charts directly within a dashboard, using an embedded popover with limited controls.

Proposed Change
We propose to introduce an Easy Charts feature into dashboards, allowing users to quickly insert and configure simple charts without leaving the dashboard context , it will be a dashboard layout components along the lines of row , column & markup .

UX Flow
User adds a new chart placeholder to a dashboard grid — an empty chart container with a + Add Chart button.

Clicking the button opens a popover chart builder UI with minimal controls:

Dataset selector

Visualization type selector (top bar)

Metric selector

GroupBy selector

Upon saving:

A new chart (slice) is saved to the backend

The chart renders inside the container

The chart can later be opened in full Explore for advanced editing

Optional: the chart container supports lightweight re-editing or swapping metrics/groupby values inline

Criteria for Inclusion
Must work within dashboard edit mode

Minimal dependencies on Explore — avoid Redux and route-level dependencies

Charts created via Easy Charts are saved as normal slices for reuse

Should support a pluggable way to select viz types and datasets

Exclusions
Full Explore control panel is out of scope

No drag-and-drop dimension/metric building (this would require a larger Explore refactor)
(Basically the explore experience of having drag & drop metrics & dimensions , they will only be available through select dropdown in this flow)

No Advanced & Customised Controls such as color scheme & labels & padding & all kinds of control panel , this flow is trying to make it easy Chart creation

The Advanced controls will have some default values or a default form data, the users can edit it after the Easy Chart is created

Example Use Cases
Casual users building simple dashboards without going through Explore

Embedded dashboards in SaaS apps where a product team wants to provide limited chart-building functionality

Rapid prototyping of new visualizations directly from dashboard view

New or Changed Public Interfaces
New chart placeholder component in dashboard grid

New EasyChartPopover component

Possibly a new endpoint or API wrapper for lightweight slice creation

Reuse existing slice creation API under the hood

Will reuse existing chart rendering and control types infrastructure

Migration Plan and Compatibility
Feature will be optional and opt-in

This is an example :
Image

These are some of the mockups created by me:

Image Image Image

This allows for rapid chart creations , feedbacks & saving on the time to find the chart from slices since the slices can have duplicate names , covering some of the painpoints faced by analytics teams between Non technical management & Data engineers

Existing dashboards are unaffected

Charts created with Easy Charts are fully compatible with the Explore view

Longer term: Easy Charts could become the basis for simplified chart authoring across Superset

Rejected Alternatives
Embedding full Explore in dashboards: too heavy, complex state management

Forcing users to pre-create charts before placing them on dashboards: reduces agility and user empowerment

Metadata

Metadata

Assignees

No one assigned

    Labels

    dashboardNamespace | Anything related to the Dashboarddesign:proposalDesign proposalssipSuperset Improvement Proposal

    Type

    No type

    Projects

    Status

    Pre-discussion

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions