Skip to main content

syncfusion-pure-react-charts

Build interactive React charts with the Syncfusion Pure React package @syncfusion/react-charts (Chart, PieChart). Covers all 50 Cartesian series types (line, spline, area, column, bar, stacking, range, step, scatter, bubble, polar, radar, candle, hilo, waterfall, histogram, pareto, box-and-whisker, multi-colored) plus pie and donut. Use whenever the user mentions Syncfusion charts, @syncfusion/react-charts, or wants React data visualization with tooltips, zoom/pan, selection, crosshair, legends, axes and panes, multi-level labels, strip lines, annotations, trendlines, technical indicators, gradients, range color mapping, local/remote data binding, live dashboards, accessibility, theming, or image/PDF/Excel/CSV export and print.

Informações da origem

Repositório
syncfusion/pure-react-ui-components-skills
Última atividade na origem
1 de outubro de 2026 às 11:06
Idioma detectado do SKILL.md
inglês
Estrelas
0
Forks
1

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Explorador de arquivos
52 arquivos

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
syncfusion-pure-react-charts
description
Build interactive React charts with the Syncfusion Pure React package @syncfusion/react-charts (Chart, PieChart). Covers all 50 Cartesian series types (line, spline, area, column, bar, stacking, range, step, scatter, bubble, polar, radar, candle, hilo, waterfall, histogram, pareto, box-and-whisker, multi-colored) plus pie and donut. Use whenever the user mentions Syncfusion charts, @syncfusion/react-charts, or wants React data visualization with tooltips, zoom/pan, selection, crosshair, legends, axes and panes, multi-level labels, strip lines, annotations, trendlines, technical indicators, gradients, range color mapping, local/remote data binding, live dashboards, accessibility, theming, or image/PDF/Excel/CSV export and print.
metadata
{"author":"Syncfusion Inc","version":"34.1.29"}
# React Chart Implementation Skill **Build interactive, production-grade React Charts with Syncfusion components.** This skill is a routing hub for chart implementation: setup, overview, types, data binding, interactivity, accessibility, styling, performance, real-time patterns, troubleshooting, and production workflows. Read only the references the current request needs; detailed patterns, API shape, and validation rules live in those references. ## Scope Covered by This Skill This skill is intentionally aligned to the chart topics documented in the charts source set, including: - Getting started, overview, layout and styling, accessibility, keyboard navigation, globalization, RTL, print/export - Events, tooltip, zooming and panning, selection and highlight, crosshair, animation - Axis customization, labels, position, category, numeric, datetime, logarithmic, multiple axes, multiple panes - Local and remote data binding - Chart elements: annotations, data labels, markers, series labels, last value labels, error bars, striplines, trendlines, legends, indicators - Line, spline, step line, area, range area, spline area, step area, column, bar, range column, stacking, combination charts - Bubble, scatter, histogram, pareto, waterfall, box-and-whisker, multi-colored line/area, pie, donut, polar, radar, and financial chart families - Gradient fills, range color mapping, multi-level axis labels, donut center labels, pie selection/highlight/annotations - Image (SVG/PNG/JPG), PDF, and data (XLSX/CSV) export through `exportChart`, and printing - Real-time dashboard patterns and live updates When a request maps to one of those areas, prefer the corresponding reference guidance and the package-provided component hierarchy over custom drawing logic. --- ## Quick Start ### Install Dependencies ```bash npm install @syncfusion/react-charts @syncfusion/react-base ``` ### Import CSS ```tsx import "@syncfusion/react-base/styles/material.css"; ``` ### Create a Chart ```tsx import { Chart, ChartSeriesCollection, ChartSeries } from "@syncfusion/react-charts"; const data = [ { month: "Jan", sales: 100 }, { month: "Feb", sales: 120 }, ]; export default function App() { return ( <Chart> <ChartSeriesCollection> <ChartSeries dataSource={data} xField="month" yField="sales" type="Column" /> </ChartSeriesCollection> </Chart> ); } ``` For pie and donut requests, render with the `PieChart` component family exported by `@syncfusion/react-charts`; create a donut by setting `PieChartSeries.innerRadius` above `0%`. Do not build slices with SVG, Canvas, CSS arcs, or manual angle math. Full setup walkthrough, theme options, and the canonical first-chart pattern: [getting-started.md](./references/getting-started.md). --- ## Reference Routing | Request topic | Read first | | --- | --- | | Setup, basic chart | [getting-started.md](./references/getting-started.md) | | Component overview, surface vs. series hierarchy | [overview.md](./references/overview.md) | | Choosing a chart `type` and required fields | [chart-types.md](./references/chart-types.md) | | Pie or donut, center label, pie selection/annotations | [pie-and-donut.md](./references/pie-and-donut.md) | | Axes, panes, labels, multiple scales | [axis-configuration.md](./references/axis-configuration.md) | | Data binding (local, React state, remote API, `DataManager`) | [data-binding.md](./references/data-binding.md) | | Annotations, labels, markers, legends, trendlines, striplines | [chart-elements.md](./references/chart-elements.md) | | Gradient fills on series, trendlines, indicators | [chart-elements/gradients.md](./references/chart-elements/gradients.md) | | Coloring points by value band, range/gradient legend | [chart-elements/range-color-mapping.md](./references/chart-elements/range-color-mapping.md) | | Grouped (multi-level) axis labels | [axis-configuration/multi-level-labels.md](./references/axis-configuration/multi-level-labels.md) | | Tooltips, zoom, pan, crosshair, selection, highlight | [interactivity.md](./references/interactivity.md) | | Event callback props and signatures | [events.md](./references/events.md) | | Responsive sizing, container layout, density | [layout-and-styling.md](./references/layout-and-styling.md) | | Themes, palettes, visual customization | [styling-and-appearance.md](./references/styling-and-appearance.md) | | Print, image/PDF export, Excel/CSV data export | [print-and-export.md](./references/print-and-export.md) | | Localization, locale-aware formatting | [globalization.md](./references/globalization.md) | | Right-to-left rendering | [rtl.md](./references/rtl.md) | | WCAG/ARIA, screen readers, color contrast, RTL | [accessibility.md](./references/accessibility.md) | | Keyboard behavior | [keyboard-navigation.md](./references/keyboard-navigation.md) | | Real-time / live updating dashboards | [real-time-charts.md](./references/real-time-charts.md) | | Multi-axis, dynamic series, optimization, testing | [advanced-patterns.md](./references/advanced-patterns.md) | | Errors, validation, diagnostics | [troubleshooting.md](./references/troubleshooting.md) | When a routed reference is an index, read only the linked nested reference matching the requested feature. Do not load unrelated references. --- ## Chart Selector by Use Case | Use case | Best chart | Why | | --- | --- | --- | | Trend over time | Line, Spline | Shows progression naturally | | Compare categories | Column, Bar | Side-by-side comparison | | Part-to-whole | Pie, Donut | Visualize percentages | | Distribution | Histogram | Show frequency bins | | Correlation | Scatter, Bubble | Display relationships | | Radial / Cyclic | Radar, Polar | Multi-dimensional comparison | | Financial data | Candle, Hilo, HiloOpenClose | Stock market visualization | | Multiple perspectives | Combination charts | Multiple metrics in one chart | The exhaustive list of supported series `type` literals, exact field mappings, and per-type configuration lives in [chart-types.md](./references/chart-types.md). Pie and donut specifics (component hierarchy, `innerRadius`, labels) live in [pie-and-donut.md](./references/pie-and-donut.md). --- ## Verified Implementation Rules These rules are enforced across every reference. Conform to them when generating code. - Use the exact component names exported by `@syncfusion/react-charts`; do not invent aliases or rely on legacy names. - Place chart-level elements such as `ChartTitle`, `ChartSubtitle`, `ChartArea`, `ChartLegend`, `ChartTooltip`, `ChartZoomSettings`, `ChartSelection`, and `ChartHighlight` directly under `Chart`. - Configure axes with the verified child configuration components: place `ChartAxisTitle`, `ChartAxisLabel`, `ChartMajorGridLines`, `ChartMinorGridLines`, and `ChartMinorTickLines` inside `ChartPrimaryXAxis` / `ChartPrimaryYAxis`. - Wrap panes as `ChartRows > ChartRow` and `ChartColumns > ChartColumn`; a bare `ChartRow` or `ChartColumn` under `Chart` is ignored. - Define extra axes with `ChartAxes`, give each axis a unique `name`, and map each series through `xAxisName` / `yAxisName`. Do not use a guessed `ChartSecondaryYAxis` tag. - Configure strip lines through `ChartStripLines` and `ChartStripLine` nested inside the axis; set `range={{ start, end }}`, `style={{ color }}`, and `text={{ content }}` objects (not flat `start`/`color`/`text` props). - Use `ChartAxisLabel intersectAction` for overlapping axis labels; `intersectMode` belongs only to `ChartDataLabel`. - Nest point adornments in the series hierarchy: `ChartMarker` contains `ChartDataLabel`, and `ChartTrendlineCollection` contains `ChartTrendline`. Pareto line options go in a `ChartParetoOptions` child; gradients go in a `ChartLinearGradient` / `ChartRadialGradient` child of the series, trendline, or indicator. - Map bubble size with `sizeField` (not `size`); enable last-value labels with `ChartLastValueLabel enable`. - Configure legend and tooltip with the verified prop names, examples: `ChartTooltip headerText`, `ChartLegend align`, `ChartTooltip textStyle.fontSize`. - Use the verified event prop names such as `onClick`, `onMouseMove`, `onPointClick`, `onLegendClick`, `onAxisLabelClick`, `onMultiLevelLabelClick`, `onZoomStart`, `onZoomEnd`, and `onResize` on the root `Chart`, and type handlers with the exported event types (`LegendClickEvent`, `PointClickEvent`, and so on). - Export with `exportChart(chart, type, fileName)` where `type` is `SVG`, `PNG`, `JPG`, `PDF`, `XLSX`, or `CSV`; `exportImage` and `exportPDF` are deprecated. - For pie and donut, use the `PieChart` family. Create a donut with `PieChartSeries.innerRadius`; there is no `isCircular` prop and no `Pie` series type on `ChartSeries`. - Before finalizing any generated sample, verify every imported symbol is used, every component is exported by `@syncfusion/react-charts`, and the resulting tree matches the verified parent/child hierarchy. --- ## Workflow 1. **Choose chart type** — Use the selector table above, then confirm the exact `type` literal and field requirements in [chart-types.md](./references/chart-types.md). 2. **Prepare data** — Ensure data is an array of objects with consistent structure; for pie/donut, follow [pie-and-donut.md](./references/pie-and-donut.md). 3. **Create a basic chart** — Use a template from [getting-started.md](./references/getting-started.md) or [chart-types.md](./references/chart-types.md). 4. **Add interactivity** — Enable tooltips, zoom/pan, selection, crosshair per [interactivity.md](./references/interactivity.md); wire events per [events.md](./references/events.md). 5. **Style and theme** — Apply palettes, theme stylesheet, and responsive sizing per [styling-and-appearance.md](./references/styling-and-appearance.md) and [layout-and-styling.md](./references/layout-and-styling.md). 6. **Accessibility** — Set `ariaLabel`, focus outline, keyboard support, and color contrast per [accessibility.md](./references/accessibility.md) and [keyboard-navigation.md](./references/keyboard-navigation.md); honor RTL via [rtl.md](./references/rtl.md) and locales via [globalization.md](./references/globalization.md). 7. **Optimize performance** — For 1000+ points or live streams, follow [advanced-patterns.md](./references/advanced-patterns.md) and [real-time-charts.md](./references/real-time-charts.md). 8. **Print/export and ship** — Use [print-and-export.md](./references/print-and-export.md); when something breaks, walk [troubleshooting.md](./references/troubleshooting.md). --- ## Validation Checklist for Generated Samples - Use package-exported chart components only; do not invent custom SVG or HTML chart primitives. - Use the correct chart family for the request: Cartesian `Chart` for line/bar/column/area, `PieChart` for pie and doughnut. - Bind data directly to series via `dataSource` with the appropriate field mappings (`xField`, `yField`, plus `sizeField`, `low`/`high`, `open`/`high`/`low`/`close` as required). - Avoid manual geometry, coordinate math, or slice path construction when the package supports the chart type. - Keep component nesting declarative and consistent with the verified reference patterns. - Match axes, labels, tooltip, legend, and interactivity props to the documented API shape. - Ensure the final sample is minimal for basic requests and is expanded only when the user asks for more features. --- ## Best Practices Checklist - Base theme CSS imported (`@syncfusion/react-base/styles/material.css`) - Data shape verified; new array reference used for React state updates - Expensive transformations memoized with `useMemo`; effects cleaned up on unmount - Real-time data bounded (60–100 points); animations disabled for 1000+ points when needed - Keyboard navigation, color contrast (WCAG AA), legend, tooltips, responsive sizing verified - Error handling present for API failures; production license key configured --- ## When to Use Each Reference | Stage | Read | | --- | --- | | Just starting | `chart-types.md` + `getting-started.md` | | Binding data | `data-binding.md` | | Making it interactive | `interactivity.md` | | Styling and theming | `styling-and-appearance.md` + `layout-and-styling.md` | | Accessibility | `accessibility.md` + `keyboard-navigation.md` | | Performance issues | `advanced-patterns.md` + `real-time-charts.md` | | Something broken | `troubleshooting.md` | | Need complex features | `advanced-patterns.md` + `chart-elements.md` | | Pie or donut specifically | `pie-and-donut.md` | | Localization / RTL | `globalization.md` + `rtl.md` | | Print or export | `print-and-export.md` | | Register a license key | `registering-license-keys.md` | | Gradients, range colors, grouped axis labels | `chart-elements/gradients.md`, `chart-elements/range-color-mapping.md`, `axis-configuration/multi-level-labels.md` | ---
Ver no GitHub