TotalBase
Widgets

Widgets

The widgets a dashboard is built from, by group, and every one of them.

In the admin: a Dashboard › the widget palette

A dashboard widget is a card that shows what its SQL query returns: a number, a chart, a table, a map. The palette is the dashboard widget catalog: what's in it can be placed, and nothing else can.

Editing a widget explains the editor every widget shares: its query, its data, its properties and its card. Each group then has its page, with every widget shown with Acme's data and its whole reference: Indicators, Comparison, Trend, Proportion, Distribution and Relation, Maps, Tables, and Visualization and Insertion. Page and form widgets are in DataViews › Widgets.

How to read a reference

  • The code name (KPI) is what the MCP tools and the Admin API take as the widget's type.
  • Data is what the widget reads from its query's columns: a role each, filled automatically from the columns' types unless you pick them (Unset says which column it takes). Takes is the kind of column a role accepts.
  • Properties are grouped by the inspector's sections.
  • The example query runs on its own, with no table: it shows the shape the widget expects.

Every widget

WidgetCodeGroupFor
KPIKPIIndicatorsOne number, large - with its change and its trend.
GaugeGAUGEIndicatorsA value on an arc, against its target.
ProgressPROGRESSIndicatorsA bar of a value toward its target - "$ 13.9M of $ 30M · 46 %", colored by thresholds.
Bar chartBARComparisonVertical bars - one group per category, one bar per series.
Horizontal barBAR_HORIZONTALComparisonHorizontal bars - for long labels; order the query yourself.
Combo chartCOMBOComparisonBars and lines on two axes - the first value column as bars on the left, the rest as lines on the right.
WaterfallWATERFALLComparisonHow a total is built - each row a change up or down; a total row the running sum so far.
LeaderboardLEADERBOARDComparisonA ranked list with bars - order and LIMIT the query yourself.
Line chartLINETrendOne line per series, over time or categories - oldest first.
Area chartAREATrendLines filled below - totals over time.
Pie chartPIEProportionEach row a slice of the whole.
Donut chartDONUTProportionA pie with a hole - each row a slice of the whole.
FunnelFUNNELProportionSteps in the query's order, each with its share of the first or the previous step.
TreemapTREEMAPProportionNested rectangles by levels (branch → category → product), each sized by its value; a parent is the sum of its children.
SunburstSUNBURSTProportionRings by levels, the innermost the first; a parent is the sum of its children.
HeatmapHEATMAPDistribution and relationA grid of two categories (day × hour, branch × month), each cell colored by its value; a missing cell stays empty.
Calendar heatmapCALENDARDistribution and relationEvery day of a year colored by its value - a year per row, the latest three.
Scatter and bubblesSCATTERDistribution and relationPoints by two numbers - with Size, bubbles; with Group, a series per group.
MapMAPMapsPoints on a street map - from a point column, or latitude and longitude.
TableTABLETablesThe rows as they come - columns starting with _ never show.
DetailDETAILTablesOne row as label / value pairs, with its image - the query's first row.
Pivot tablePIVOTTablesThe query's detail rows aggregated by PostgreSQL into rows × columns, with subtotals and totals - never added up on screen.
ImageTImageVisualizationA fixed image - a logo, a branch's floor plan: a file uploaded here (public) or an https URL.
HeadingTHeadingVisualizationA section title - a formula may name what is shown: "Sales of " + .
TextTTextVisualizationA paragraph - its text a formula over the variables, the viewer and the query's rows.
QR codeTQrCodeVisualizationA QR code of a value - a link to this report, a device's code - drawn in the browser.
BadgeUBadgeVisualizationA short label - its text and color may be formulas: a state, a count.
AlertUAlertVisualizationA message with a title and a description - a warning the query or a variable decides.
SeparatorUSeparatorVisualizationA rule between sections, with an optional label.
FrameTFrameInsertionAnother site's page in a sandboxed frame - its URL may take , and values after the site.

Next steps