Supported Chart Types
Bar Charts
Type:
Subtype:
bar_chartsSubtype:
basic_barCompare values across categories with vertical barsLine Charts
Type:
Subtype:
line_chartsSubtype:
basic_lineShow trends over time or continuous dataArea Charts
Type:
Subtype:
area_chartsSubtype:
basic_areaDisplay cumulative trends with filled areasPie Charts
Type:
Subtype:
pie_chartsSubtype:
basic_pieShow proportions and percentagesConfiguration
Required Fields
All chart widgets require the following configuration:- Connection - Database connection to query
- Table - Single table to visualize
- X-Axis Column - Category/label column (non-numeric)
- Y-Axis Columns - One or more numeric value columns
- Title - Descriptive chart name (required)
Configuration Object
Examples
Basic Bar Chart
Multi-Series Line Chart
Area Chart with Grouping
Chart with Sum Aggregation
Aggregation Options
- No Grouping
- Sum Aggregation
- Average Aggregation
Default BehaviorWhen
groupXAxis is false or not specified:- Each row in your table becomes a data point
- If multiple rows have the same X-axis value, they appear as separate points
- Best for: Pre-aggregated data or when you want to show individual records
Data Requirements
X-Axis Column (Categories)
The X-axis column must contain non-numeric data (text/string values).
- String
- Text
- VARCHAR
- CHAR
- Date (displayed as formatted strings)
Y-Axis Columns (Values)
Y-axis columns must contain numeric data.
- INTEGER
- BIGINT
- DECIMAL
- NUMERIC
- REAL
- DOUBLE PRECISION
- SMALLINT
- INT
- FLOAT
- NUMBER
Features
Interactive Tooltips
Hover over data points to see detailed values
Legend
Automatically generated legend for multi-series charts
Responsive Design
Charts adapt to container size and screen width
Expand/Collapse
Desktop users can expand charts to double width (2 columns)
Data Refresh
Manual refresh button to reload chart data
Color Coding
Automatic color assignment for multiple series
Chart-Specific Behavior
Bar Charts
- Best for comparing discrete categories
- Supports multiple Y-axis columns (grouped bars)
- Vertical orientation
- Grid lines for easy value reading
Line Charts
- Ideal for showing trends over time
- Multiple lines for different metrics
- Smooth curve option available
- Connected data points
Area Charts
- Similar to line charts with filled areas
- Shows cumulative effect visually
- Supports stacked areas for multiple series
- Great for showing volume or magnitude
Pie Charts
- Shows proportional relationships
- Best with single Y-axis column
- Displays percentages automatically
- Interactive segment highlighting
Usage Tips
Choosing the right chart type
Choosing the right chart type
- Bar charts: Comparing categories, rankings, discrete data
- Line charts: Time series, trends, continuous data
- Area charts: Cumulative trends, volume over time
- Pie charts: Proportions, percentages, parts of a whole
When to use grouping
When to use grouping
Enable
groupXAxis when:- Your data has duplicate X-axis values that need combining
- You’re showing raw transaction data that needs aggregation
- You want to see totals or averages per category
- Your data is already aggregated
- You want to see individual data points
- Each row represents a unique category
Multiple Y-axis columns
Multiple Y-axis columns
Use multiple Y-axis columns to:
- Compare related metrics (revenue vs expenses)
- Show multiple dimensions of the same category
- Create multi-series visualizations
Performance considerations
Performance considerations
- Charts load all data at once (no pagination)
- Large datasets (>1000 rows) may impact performance
- Use database views or aggregated tables for better performance
- Consider grouping to reduce data points
Data Transformation
The chart widget automatically transforms your database data:- Validation: Filters out rows with invalid or missing values
- Type Conversion: Converts string numbers to numeric values
- Grouping: Optionally groups by X-axis value
- Aggregation: Applies sum or average to grouped data
- Normalization: Ensures all values are finite numbers
src/components/dashboard/widgets/charts/utils/dataTransformer.ts
Expanded View
On desktop (XL breakpoint), charts can be expanded to double width:Source Code Reference
Chart widget implementation:- Configuration:
src/components/dashboard/widgets/charts/chartConfig.tsx:57-792 - Widget Rendering:
src/components/dashboard/widgets/charts/chartWidget.tsx:31-289 - Bar Chart:
src/components/dashboard/widgets/charts/barChart.tsx - Line Chart:
src/components/dashboard/widgets/charts/lineChart.tsx - Area Chart:
src/components/dashboard/widgets/charts/areaChart.tsx - Data Transformer:
src/components/dashboard/widgets/charts/utils/dataTransformer.ts:3-176
Related Widgets
Simple Datatables
View the raw data behind your charts
Integrated Datatables
Compare data across multiple databases
