anchor.diff:      }
     }
   
  + void drawRangeAnnotation(Canvas canvas, Size viewSize) {
  +    if (data.rangeAnnotations == null) {
  +      print('is null');
  +      return;
  +    }
  +
  +    final Size chartUsableSize = getChartUsableDrawSize(viewSize);
  +
  +    if (data.rangeAnnotations.hasVerticalRangeAnnotations) {
  +      for (VerticalRangeAnnotation anno in data.rangeAnnotations.verticalRangeAnnotations) {
  +        final double topChartPadding = getTopOffsetDrawSize();
  +        final Offset from = Offset(getPixelX(anno.x1, chartUsableSize), topChartPadding);
  +
  +        final double bottomChartPadding = getExtraNeededVerticalSpace() - getTopOffsetDrawSize();
  +        final Offset to =
  +            Offset(getPixelX(anno.x2, chartUsableSize), viewSize.height - bottomChartPadding);//9
  +
  +        final Rect rect = Rect.fromPoints(from, to);
  +
  +        rangeAnnotationPaint.color = anno.color;
  +
  +        canvas.drawRect(rect, rangeAnnotationPaint);
  +      }
  +    }
  +
  +    if (data.rangeAnnotations.hasHorizonalRangeAnnotations) {
  +      for (HorizontalRangeAnnotation anno in data.rangeAnnotations.horizontalRangeAnnotations) {
  +        final double leftChartPadding = getLeftOffsetDrawSize();
  +        final Offset from = Offset(leftChartPadding, getPixelY(anno.y1, chartUsableSize));
  +
  +        final double rightChartPadding = getExtraNeededHorizontalSpace() - getLeftOffsetDrawSize();
  +        final Offset to =
  +            Offset(viewSize.width - rightChartPadding, getPixelY(anno.y2, chartUsableSize));
  +
  +        final Rect rect = Rect.fromPoints(from, to);
  +
  +        rangeAnnotationPaint.color = anno.color;
  +
  +        canvas.drawRect(rect, rangeAnnotationPaint);
  +      }
  +    }
  +  }
  +
     void drawTouchTooltip(Canvas canvas, Size viewSize, LineTouchTooltipData tooltipData,
       FlSpot showOnSpot, MapEntry<int, List<LineBarSpot>> showingTooltipSpots) {
   
  
positive.code: 
      drawAxisTitles(canvas, size);
      drawTitles(canvas, size);
  
      drawExtraLines(canvas, size);
  
      // Draw touch tooltip on most top spot
      for (int i = 0; i < data.showingTooltipIndicators.length; i++) {
  
negative.code:   /// [extraLinesPaint] is responsible to draw extra lines
    /// [touchLinePaint] is responsible to draw touch indicators(below line and spot)
    /// [bgTouchTooltipPaint] is responsible to draw box backgroundTooltip of touched point;
    /// [rangeAnnotationPaint] draws range annotations;
    Paint barPaint,
      barAreaPaint,
      barAreaLinesPaint,
  