Skip to content

Creating a Line Chart Component

Create a component using schematics and name it with your initial E.g:

jd-chart

We are going to make it render rechart's Line Chart https://recharts.org/en-US/examples/SimpleLineChart.

To do this:

  1. Install the recharts module with:

    yarn add recharts
    
  2. Import the components needed in src/components/JdChart.tsx with:

    import { LineChart, Line, XAxis, YAxis, CartesianGrid, Tooltip, Legend } from 'recharts';
    
  3. Add the example data:

    json const data = [ { name: 'Page A', uv: 4000, pv: 2400, amt: 2400, }, { name: 'Page B', uv: 3000, pv: 1398, amt: 2210, }, { name: 'Page C', uv: 2000, pv: 9800, amt: 2290, }, { name: 'Page D', uv: 2780, pv: 3908, amt: 2000, }, { name: 'Page E', uv: 1890, pv: 4800, amt: 2181, }, { name: 'Page F', uv: 2390, pv: 3800, amt: 2500, }, { name: 'Page G', uv: 3490, pv: 4300, amt: 2100, }, ]; 4. Replace the JSX: html <div> <p>jd-chart works. Please edit src/components/JdChart.tsx to make changes</p> <h3>Next Steps</h3> <ul> . . . . </ul> </div> To:

html <LineChart width={500} height={300} data={data} margin={{ top: 5, right: 30, left: 20, bottom: 5, }} > <CartesianGrid strokeDasharray="3 3" /> <XAxis dataKey="name" /> <YAxis /> <Tooltip /> <Legend /> <Line type="monotone" dataKey="pv" stroke="#8884d8" activeDot={{ r: 8 }} /> <Line type="monotone" dataKey="uv" stroke="#82ca9d" /> </LineChart>

You should see the component build in the npm watch window:

webpack 5.14.0 compiled <span style="color:green">successfully</span> in 208 ms
  1. Reload the component test template. A Line Chart will display:

    Chart

This example is available at https://github.com/formbird-components/component-examples/tree/master/jd-chart