flitter-ui (지금 베타입니다)
Back to Radar Chart

Radar Chart — Advanced

Custom renderers and headless architecture for radar charts.

Tell your AI agent what you want to customize.

ui.flitter.dev/llm/chart/radar-chart.md

Paste this URL into Claude Code or Cursor to generate custom renderers instantly.

Customizable Elements

Every visual element can be replaced with a custom renderer function. Each function receives element-specific args and a context with the full chart state.

ElementArgsDescription
layout{ title: Widget, legends: Widget[], plot: Widget }Overall chart layout — arranges title, legend, and plot area
plot{ angularAxis: Widget, radialAxis: Widget, dataView: Widget }Plot area — positions angular axis, radial axis, and data view together
titleundefinedChart title text rendering
legend{ name: string, index: number }Individual legend item rendering
angularAxis{ line: Widget, labels: Widget[] }Angular axis container — assembles spoke lines and category labels
angularAxisLine{ axisCount: number }Angular axis spoke lines radiating from center
angularAxisLabel{ index: number, label: string, angle: number, nx: number, ny: number }Individual category label on the angular axis
radialAxis{ line: Widget, labels: Widget[] }Radial axis container — assembles concentric polygons and scale labels
radialAxisLine{ levels: number, axisCount: number }Concentric polygon grid lines
radialAxisLabel{ value: number, index: number }Scale value label on the radial axis
dataView{ radars: Widget[] }Data view container — wraps all radar polygon widgets
radar{ legend: string, index: number, vertices: RadarVertex[] }Individual radar polygon — vertices include { nx, ny, angle, ratio, value, label, index }

Usage

Override any element by passing a custom object.

import { RadarChart } from "@flitterjs/chart";

RadarChart({
  style: "toast",
  data: { /* ... */ },
  custom: {
    radar: (args, context) => {
      // args: { legend, index, vertices: RadarVertex[] }
      //   RadarVertex: { nx, ny, angle, ratio, value, label, index }
      // context: RadarChartController & { config }
      //   - context.data, context.scale
      //   - context.width, context.height, context.legends
      //   - context.toggleSeries(), ...
      // Return any Flitter Widget
    },
  },
});