Simple, immersive & interactive charts for React
- Hyper Responsive
- Declarative & Deterministic
- Highly performant
- Built-in Animation (using React-Move)
- Flexible data model support
- Simple & powerful API
$ yarn add react-chartsimport React from 'react'
import { Chart, Axis, Series, Tooltip, Cursor, Line } from 'react-charts'
const lineChart = (
<Chart data={...}>
<Axis
primary
type="time"
position="bottom"
/>
<Axis
type="linear"
position="left"
/>
<Series type={Line} />
<Tooltip />
<Cursor primary />
<Cursor />
</Chart>
)All series types that support lines or curves can be configured to use any curve function from d3-shape by passing one of the following strings as the curve prop to a series component. You may also pass your own curve function directly from d3 or if you're feeling powerful, even create your own!
Note the following string correspond to their respective d3 curve functions but with the curve prefix removed.
basisClosedbasisOpenbasisbundlecardinalClosedcardinalOpencardinalcatmullRomClosedcatmullRomOpencatmullRomlinearClosedlinearmonotoneX(default)monotoneYnaturalstepstepAfterstepBefore
Example
<Chart>
...
<Series type={Line} curve='cardinal' />
</Chart>To suggest a feature, create an issue if it does not already exist. If you would like to help develop a suggested feature follow these steps:
- Fork this repo
$ yarn$ yarn run storybook- Implement your changes to files in the
src/directory - View changes as you code via our React Storybook
localhost:8000 - Make changes to stories in
/stories, or create a new one if needed - Submit PR for review
$ yarn run storybookRuns the storybook server$ yarn run testRuns the test suite$ yarn run prepublishBuilds for NPM distribution$ yarn run docsBuilds the website/docs from the storybook for github pages