We can add charts easily to a React app with Recharts.
In this article, we’ll look at how to use it.
Radar Chart
We can add a radar chart with the Radar
and RadarChart
components.
For example, we can write:
import React from "react";
import {
Radar,
RadarChart,
PolarGrid,
PolarAngleAxis,
PolarRadiusAxis
} from "recharts";
const data = [
{
subject: "Math",
A: 120,
B: 110,
fullMark: 150
},
{
subject: "Science",
A: 98,
B: 130,
fullMark: 150
},
{
subject: "English",
A: 86,
B: 130,
fullMark: 150
}
];
export default function App() {
return (
<div className="App">
<RadarChart
cx={300}
cy={250}
outerRadius={150}
width={500}
height={500}
data={data}
>
<PolarGrid />
<PolarAngleAxis dataKey="subject" />
<PolarRadiusAxis />
<Radar
name="Mike"
dataKey="A"
stroke="#8884d8"
fill="#8884d8"
fillOpacity={0.6}
/>
</RadarChart>
</div>
);
}
We add the RadarChart
component to wrap around the points.
outerRadius
has the radius of the radar chart.
width
and height
has the dimensions.
PolarGrid
adds the grid lines.
PolarAngleAxis
sets the axis.
The dataKey
prop is set to the property name of the key.
PolarRadiusAxis
has the axes with the numbers.
Radar
has the radar chart values.
dataKey
has the property name with the values for the radar chart.
fill
has the fill color.
stroke
has the stroke color for the radar chart.
fillOpacity
sets the opacity for the fill of the shape connected by the dots.
Radial Bar Chart
Recharts lets us add radial bar charts.
For example, we can write:
import React from "react";
import { RadialBarChart, RadialBar, Legend } from "recharts";
const data = [
{
name: "18-24",
uv: 31,
pv: 2400,
fill: "#8884d8"
},
{
name: "25-29",
uv: 26,
pv: 4567,
fill: "#83a6ed"
},
{
name: "30-34",
uv: 17,
pv: 1398,
fill: "#8dd1e1"
}
];
const style = {
top: 0,
left: 350,
lineHeight: "24px"
};
export default function App() {
return (
<div className="App">
<RadialBarChart
width={500}
height={300}
cx={150}
cy={150}
innerRadius={20}
outerRadius={140}
barSize={10}
data={data}
>
<RadialBar
minAngle={15}
label={{ position: "insideStart", fill: "#fff" }}
background
clockWise
dataKey="uv"
/>
<Legend
iconSize={10}
width={120}
height={140}
layout="vertical"
verticalAlign="middle"
wrapperStyle={style}
/>
</RadialBarChart>
</div>
);
}
The RadialBarChart
has the bars.
width
and height
has the dimensions of the radial bar chart.
innerRadius
and outerRadius
defines the radii for the innermost and outermost rings.
data
has the data we want to display.
RadialBar
has the radial bars to display.
clockwise
makes it animate clockwise.
dataKey
has the property name with the value for the bars.
background
makes a background color display.
Legend
has the legend for the bars.
layout
sets the layout for the legend.
verticalAlign
sets the vertical alignment.
wrapperStyle
has the style for the legend’s wrapper element.
iconSize
sets the size of the icons.
width
and height
sets the dimensions of the legend.
Conclusion
We can add radar and radial bar charts with Recharts.