Usage
DonutChart
is based on PieChart recharts component:
Segments labels
Set withLabels
prop to display labels next to each segment:
Size and thickness
Set size
prop to control width and height of the chart. Note that if withLabels
prop is set,
the chart height is automatically increased by 80px to make room for labels. You can override
this behavior by setting h
style prop.
Padding angle
Use paddingAngle
prop to control the space between segments:
Segment color
You can reference colors from theme the same way as in
other components, for example, blue
, red.5
, orange.7
, etc. Any valid CSS
color value is also accepted.
Tooltip data source
By default, the tooltip displays data for all segments when hovered over any segment.
To display data only for the hovered segment, set tooltipDataSource="segment"
:
Data only for hovered segment
Data only for all segments
Without tooltip
To remove the tooltip, set withTooltip={false}
:
Chart label
To display a label in the center of the chart, use chartLabel
prop.
It accepts a string or a number:
Start and end angle
Use startAngle
and endAngle
props to control the start and end angle of the chart.
For example, to display a half-circle chart, set startAngle={180}
and endAngle={0}
:
Note that even when startAngle
and endAngle
props are set, the chart still takes
the same amount of space as if it was a full circle.
Segments stroke
Use strokeWidth
prop to control the width of the stroke around each segment:
To change color of the stroke, use strokeColor
prop. You can reference colors from theme the same way as in
other components, for example, blue
, red.5
, orange.7
, etc. Any valid CSS
color value is also accepted.
By default, segments stroke color is the same as the background color of the body element
(--mantine-color-body
CSS variable). If you want to change it depending on the color scheme,
define CSS variable and pass it to the strokeColor
prop: