hitRegions method

  1. @override
List<HitRegion> hitRegions(
  1. ChartContext context
)
override

Optional hit regions for interaction.

Implementation

@override
List<HitRegion> hitRegions(ChartContext context) {
  final regions = <HitRegion>[];
  final sizeRange = _globalSizeRange(context.config.series);

  for (final series in context.config.series) {
    for (var i = 0; i < series.points.length; i++) {
      final p = series.points[i];
      final canvas = context.transformer.dataToCanvas(p.x, p.y);
      final r = _radiusFor(p, sizeRange) + 4;
      regions.add(
        HitRegion(
          bounds: Rect.fromCircle(center: canvas, radius: r),
          seriesId: series.id,
          pointIndex: i,
          dataX: p.x,
          dataY: p.y,
          label: p.label ?? series.name,
        ),
      );
    }
  }
  return regions;
}