onCreateRenderer property
Used to create the renderer for custom series.
This is applicable only when the custom series is defined in the sample and for built-in series types, it is not applicable.
Renderer created in this will hold the series state and this should be created for each series. onCreateRenderer callback function should return the renderer class and should not return null.
Series state will be created only once per series and will not be created again when we update the series.
Defaults to null
.
Widget build(BuildContext context) {
return SfCartesianChart(
series: <LineSeries<SalesData, num>>[
LineSeries<SalesData, num>(
onCreateRenderer:(ChartSeries<dynamic, dynamic> series){
return CustomLinerSeriesRenderer();
}
),
],
);
}
class CustomLinerSeriesRenderer extends LineSeriesRenderer {
CustomLinerSeriesRenderer(this.series);
final ColumnSeries<SalesData, num> series;
@override
int get currentSegmentIndex => super.currentSegmentIndex!;
@override
Paint getFillPaint() {
final Paint customerFillPaint = Paint();
customerFillPaint.color = series.dataSource[currentSegmentIndex].y > 30
? Colors.red
: Colors.green;
customerFillPaint.style = PaintingStyle.fill;
return customerFillPaint;
}
@override
void onPaint(Canvas canvas) {
super.onPaint(canvas);
}
}
Implementation
final ChartSeriesRendererFactory<T, D>? onCreateRenderer;