draw method
Implementation
@override
void draw(Canvas canvas, ChartsState state) {
_ChartCircularCoordinateState layout = state.layout as _ChartCircularCoordinateState;
Offset center = layout.center;
double radius = layout.radius;
canvas.clipPath(Path()..addOval(Rect.fromCircle(center: center, radius: radius)));
var index = 0;
for (T item in data) {
num po = position.call(item);
double height = radius * 2;
if (layout.arcPosition == ArcPosition.none) {
height = radius * 2;
} else {
height = radius;
}
double waterHeight = height * po;
Paint paint = Paint()
..color = colors[index]
..style = PaintingStyle.fill;
Path path = _createBezierPath(_transform, radius, waterHeight);
canvas.drawPath(path, paint);
index++;
}
}