Radar Chart
Values of several series on axes spread around a centre — compare profiles, skills or ratings at a glance. Drawn as SVG by the component, rendered on the server and themed by the design tokens.
Part of @tectra-ng/charts (npm install @tectra-ng/charts, also included in tectra-ng).
Basic
Each series is a filled polygon over the grid rings. Hover a slice of the chart: its axis lights up, every series gets a marker on it and the tooltip lists the values.
| Category | Candidate A | Candidate B |
|---|---|---|
| Frontend | 90 | 60 |
| Backend | 55 | 85 |
| Testing | 70 | 75 |
| Design | 80 | 40 |
| Communication | 65 | 70 |
| Planning | 50 | 80 |
Circle
shape="circle" draws round grid rings — a good fit for many axes such as months. markers turns the value points off.
| Category | North | South |
|---|---|---|
| Jan | 18 | 9 |
| Feb | 15 | 8 |
| Mar | 14 | 7 |
| Apr | 12 | 6 |
| May | 11 | 4 |
| Jun | 10 | 2 |
| Jul | 9 | 1 |
| Aug | 11 | 1 |
| Sep | 13 | 3 |
| Oct | 16 | 6 |
| Nov | 18 | 8 |
| Dec | 19 | 10 |
Single
A single series has no legend; the tooltip still names it.
| Category | Score |
|---|---|
| Speed | 72 |
| Accessibility | 96 |
| Best practices | 88 |
| SEO | 91 |
| Stability | 64 |
Scale
min, max and rings fix the scale — here a five-star rating with one ring per star. tooltipFormatter writes the values.
| Category | Laptop 13" | Laptop 14" | Laptop 16" |
|---|---|---|---|
| Battery | 4.5 | 4 | 3 |
| Screen | 4 | 4.5 | 5 |
| Keyboard | 3.5 | 4.5 | 4 |
| Weight | 5 | 4 | 2.5 |
| Price | 3 | 3.5 | 2.5 |
Legend
The legend on the side with legendVariant="stat": each series shows its average, and the value on the focused axis while you hover. A click hides a series; hovering an item fades the others.
| Category | Team North | Team South |
|---|---|---|
| Delivery | 82 | 70 |
| Quality | 74 | 88 |
| Support | 90 | 76 |
| Docs | 61 | 84 |
| Uptime | 97 | 92 |
Events
pointClick reports the clicked axis with the series nearest to the pointer; seriesToggle reports legend changes.
| Category | This year | Last year |
|---|---|---|
| Onboarding | 78 | 70 |
| Search | 64 | 58 |
| Checkout | 81 | 74 |
| Support | 72 | 75 |
| Mobile | 69 | 52 |
Click an axis or a legend item.
Loading and empty
loading keeps the size with a skeleton; empty series (or only null values) show "No data".
Live
Changing series, shape or fill redraws in place — the polygons morph to their new shape.
| Category | Before | After |
|---|---|---|
| Strength | 30 | 49 |
| Speed | 53 | 72 |
| Agility | 76 | 95 |
| Stamina | 99 | 48 |
| Focus | 52 | 71 |
| Balance | 75 | 94 |
Accessibility
Tab to the chart: ←/→ move between the axes, ↑/↓ between the series, Home / End jump to the first and last axis, Escape closes the tooltip. Each value is announced; screen readers also get a summary and a hidden data table.
| Category | Spring | Autumn |
|---|---|---|
| Content | 4.2 | 4.4 |
| Pace | 3.6 | 4.1 |
| Exercises | 4.5 | 4.3 |
| Support | 3.9 | 4.6 |
| Tools | 4.1 | 3.8 |
Design tokens
dt sets the line width, the fill, the points, the axis labels and the palette of one chart.
| Category | Flavour |
|---|---|
| Sweet | 6 |
| Sour | 3 |
| Bitter | 7 |
| Salty | 2 |
| Umami | 5 |
Pass through
pt reaches the parts — area, line, marker, ring, axisLine, axisLabel, grid, legend, plot, tooltip and more.
| Category | Plan | Fact |
|---|---|---|
| North | 50 | 55 |
| East | 40 | 32 |
| South | 45 | 47 |
| West | 35 | 41 |
| Online | 60 | 72 |
Unstyled
unstyled removes the tectra styles: no grid colours, no fonts, no motion — the geometry, the colours of the series, the tooltip and the keyboard stay, ready for your own CSS.
| Category | Values |
|---|---|
| A | 5 |
| B | 8 |
| C | 3 |
| D | 6 |
| E | 7 |