Radar Chart

A versatile radar chart (spider/web chart) for visualizing multi-dimensional data. Perfect for player stats, skills assessment, product comparisons, and performance metrics.

Multi-Series
Gaming Ready
Interactive Tooltips
Smooth Animations
Keyboard Accessible
Responsive
TypeScript

Basic Radar Chart

Compare developer skill profiles across multiple dimensions with interactive hover and click

Loading...
Selected: Click the chart to select

Installation

Get started with the RadarChart component in just a few steps.

Quick Install
bash
npx mario-charts@latest add radar-chart
Zero Lock-in Philosophy
The component is fully yours to own, modify, and customize.

Examples

Explore different configurations and use cases for the RadarChart component.

FIFA-Style Player Stats

Compare two players with overlapping radar polygons - a classic gaming use case

Loading...

Product Comparison

Compare multiple products across various dimensions with automatic color cycling

Loading...

Custom Styling

Customize colors, fill opacity, and stroke width for unique visual styles

Loading...

Chart States

Built-in states for loading, error, and empty data scenarios.

Loading State

Error State

Chart Error
Failed to load chart data. Please try again.

Empty State

No Data
There's no data to display

API Reference

Complete list of props available for the RadarChart component.

PropTypeDefaultDescription
seriesrequired
readonly RadarSeries<T>[]Array of data series to display. Each series has id, name, data object, and optional color
axesrequired
readonly RadarAxis[]Configuration for each axis/dimension with key, label, and optional min/max bounds
colors
readonly string[]DEFAULT_COLORSArray of colors to use for series (cycles through for multiple series)
height
number400Height of the chart in pixels
showAxisLabels
booleantrueShow labels at the end of each axis
showDots
booleantrueShow dots at each data point vertex
fillOpacity
number0.25Opacity of the polygon fill (0-1)
strokeWidth
number2Width of the polygon stroke in pixels
labelOffset
number25Distance of axis labels from the chart edge
loading
booleanfalseShow loading state with animated skeleton
error
string | nullnullError message to display
animation
booleantrueEnable entrance and hover animations
onSeriesClick
(series: RadarSeries<T>, index: number) => voidCallback fired when a series polygon is clicked
onAxisClick
(axis: RadarAxis, index: number) => voidCallback fired when an axis is clicked
className
stringAdditional CSS classes to apply to the container