Cube Query Rendering Visualization - Sankey Diagram

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

Problem to solve

Users have visualization needs that go beyond the existing set of chart visualizations that we provide. One visualization need is around understand how multiple groups of users flow from one set of input states to a set of end states.

As an example of an eCommerce site, a Sankey chart is a good way to visualize the multiple ways that customers may enter the store and the multiple ways that they may exit the store.

image

Proposal

Allow users to define a Sankey chart as part of their dashboards. Sankey charts are an important visualization mechanism for understanding how users flow from one or more input states to one or more output states.

Leverage the design approach that Pajamas provides for column charts to ensure we have a consistent look-and-feel as the rest of the product.

Update the Visualization Designer to also allow this as a choice.

Visualization parameters definitions

Allow the user to define the following parameters for the Sankey chart:

  • sources - The beginning states for the chart
  • sinks - The end states for the chart
  • filter - for filtering which data is included in the chart
    • Question: Can we use what cube.dev already provides here or is this complex?
  • grouping - to determine what granularity values on the x-axis should be grouped. For time series, this should support at least daily, weekly, and monthly.
  • Axis labeling - allow users to specify custom values for the x-axis and y-axis

Note: We can start with only have a single set of sources and sinks, rather than needing to worry about interim states between them.

Intended users

Feature Usage Metrics

This page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features, or functionality remain at the sole discretion of GitLab Inc.

__
Edited by 🤖 GitLab Bot 🤖