Overview
Qt-UI ChartKit Overview
ChartKit is a Qt Widget chart component library for desktop data visualization. The current chart controls use ChartKit's own OpenGL-rendered widget model. Application code should use the public ChartKit controls and data structures to configure data, themes, and interaction.
Base Classes
| Type | Description |
|---|---|
UIGQChartBase |
Common chart rendering base class. It inherits QOpenGLWidget and manages themes, legend position, background color, animation, and tooltip overlay. |
IUIGQWidgetBase |
Qt-UI common widget interface used for registration, JSON, layout, and styling integration. |
UIGQChartTheme |
Theme data structure for background, plot area, title, axes, grid lines, hover guide, and palette. |
Class Diagram
QWidget
└─ QOpenGLWidget
└─ UIGQtLib::UIGQChartBase
├─ UIGQtLib::UIGQLineChart + IUIGQWidgetBase
├─ UIGQtLib::UIGQBarChart + IUIGQWidgetBase
├─ UIGQtLib::UIGQOpenGLPieChart + IUIGQWidgetBase
└─ UIGQtLib::UIGQScatterChart + IUIGQWidgetBase
Chart Types
| Chart | Class | typeName | Data Entry |
|---|---|---|---|
| Line | UIGQLineChart |
qtlinechart |
setCategories(...) + setSeries(...) |
| Bar | UIGQBarChart |
qtbarchart |
setCategories(...) + setSeries(...) |
| Pie | UIGQOpenGLPieChart |
qtopenglpiechart |
setSlices(...) |
| Scatter | UIGQScatterChart |
qtscatterchart |
setSeries(...) |
Basic Call Pattern
using namespace UIGQtLib;
auto* chart = new UIGQLineChart(parent);
chart->setTitle("Revenue Trend");
chart->setCategories({"Q1", "Q2", "Q3", "Q4"});
chart->setSeries("Revenue", {120.0, 160.0, 148.0, 210.0}, QColor(35, 128, 224));
chart->setThemePreset(kChartThemeMacarons);
chart->setLegendPosition(kChartLegendBottom);
chart->setTooltipVisible(true);
chart->setHoverEnabled(true);
API Entry Points
Use ChartKit APIs such as setSeries(...), setCategories(...), setSlices(...), and setThemePreset(...). Internal rendering objects are managed by the chart controls and are not application-level APIs.