Range error when clicking on the chart

Whenever the user taps on the chart, the following error is generated:


======== Exception caught by gesture
===============================================================
The following RangeError was thrown while handling a gesture:
RangeError (index): Invalid value: Valid value range is empty: 0
When the exception was thrown, this was the stack:
#0 List.[] (dart:core-patch/growable_array.dart:254:60)
#1 getNearestChartPoints (package:syncfusion_flutter_charts/src/chart/common/common.dart:1652:28)
#2 SelectionRenderer.isSeriesContainsPoint (package:syncfusion_flutter_charts/src/chart/user_interaction/selection_renderer.dart:1517:9)
#3 ContainerArea._findSeries (package:syncfusion_flutter_charts/src/chart/base/chart_base.dart:2948:24)
#4 ContainerArea.build.<anonymous closure>.<anonymous closure> (package:syncfusion_flutter_charts/src/chart/base/chart_base.dart:2284:57)
#5 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:193:24)
#6 TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:608:11)
#7 BaseTapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:296:5)
#8 BaseTapGestureRecognizer.acceptGesture (package:flutter/src/gestures/tap.dart:267:7)
#9 GestureArenaManager.sweep (package:flutter/src/gestures/arena.dart:157:27)
#10 GestureArenaManager.release (package:flutter/src/gestures/arena.dart:200:7)
#11 DoubleTapGestureRecognizer._reset (package:flutter/src/gestures/multitap.dart:314:45)
(elided 11 frames from class _RawReceivePortImpl, class _Timer, dart:async, and dart:async-patch)
Handler: "onTap"
Recognizer: TapGestureRecognizer#4b4dc
  debugOwner: GestureDetector
  state: ready
  won arena
  finalPosition: Offset(83.1, 450.9)
  finalLocalPosition: Offset(45.1, 207.7)
  button: 1
  sent tap down
===============================================================


I want the tooltip to work in order to let the user see the date and the consumption when tapping on a desired column. 

Here is a code snippet:

SfCartesianChart(
  primaryXAxis: DateTimeAxis(
  intervalType: DateTimeIntervalType.days,
  majorGridLines: const MajorGridLines(
    color: Colors.transparent),
    minimum: periodStartDate,
    maximum: periodEndDate,
  ),
  primaryYAxis: NumericAxis(
    numberFormat: NumberFormat.decimalPattern(),
    labelFormat: "{value} "
  ),
  enableSideBySideSeriesPlacement: false,
  tooltipBehavior: TooltipBehavior(enable: true),
  series: <ChartSeries>[
    ColumnSeries< ConsumptionData, DateTime>(
    name: 'الاستهلاك (طن)',
    dataSource: _chartDataNormal,
    xValueMapper: (ConsumptionData cons, _) => cons.date,
    yValueMapper: (ConsumptionData cons, _) => cons.consumption,
    enableTooltip: true,
    borderRadius: BorderRadius.all(Radius.circular(5)),
    color: Colors.blue,
    isVisibleInLegend: false,
    ),
    ColumnSeries< ConsumptionData, DateTime>(
      name: ' الاستهلاك (طن)',
      dataSource: _chartDataAbnormal,
      xValueMapper: (ConsumptionData cons, _) => cons.date,
      yValueMapper: (ConsumptionData cons, _) => cons.consumption,
      enableTooltip: true,
      borderRadius: BorderRadius.all(Radius.circular(5)),
      color: Colors.red,
      isVisibleInLegend: false,
    ),
    LineSeries<ConsumptionData, DateTime>(
      enableTooltip: false,
      dataSource: <ConsumptionData>[
      ConsumptionData(
        DateTime(
          DateTime.now().year - 20,
          DateTime.now().month,
          DateTime.now().day),
        _averageConsumption
      ),
      ConsumptionData(
        DateTime(
          DateTime.now().year + 20,
          DateTime.now().month,
          DateTime.now().day),
        _averageConsumption),
      ],
      xValueMapper: (ConsumptionData cons, _) => cons.date,
      yValueMapper: (ConsumptionData cons, _) => _averageConsumption,
      color: Colors.green,
      opacity: 0.5,
      dashArray: <double>[5, 5],
    ),
  ],
),

3 Replies

YG Yuvaraj Gajaraj Syncfusion Team October 18, 2021 11:43 AM UTC

Hi Mohammed, 
 
We would like to let you know that the reported issue was already fixed with the latest version of chart package. To resolve this issue, kindly upgrade your chart package from below 
 
 
Thanks, 
Dharani.


MA Mohammed Albaity replied to Yuvaraj Gajaraj October 18, 2021 01:37 PM UTC

I am using the latest version "syncfusion_flutter_charts: ^19.3.45+1" and the error still exists.



YG Yuvaraj Gajaraj Syncfusion Team October 19, 2021 11:45 AM UTC

Hi Mohammed, 

 
Thanks for the your information. We found that there is another ticket has been created for you with the same query. So, we kindly request you to follow-up the ticket for further queries.
 

 
Regards, 
Yuvaraj. 


Loader.
Up arrow icon