imaNNeo/fl_chart

Dynamic tooltipBgColor in LineChart [Partial idea, i need help with the final part]

Open

#1,088 opened on 2022年7月7日

GitHub で見る
 (2 comments) (0 reactions) (0 assignees)Dart (1,964 forks)batch import
Line Chartgood first issuequestion

Repository metrics

Stars
 (7,513 stars)
PR merge metrics
 (30d に merged PR はありません)

説明

Hello,

I am trying to implement a dynamic tooltipBgColor, i achieved something, but i need help with the final part.

As you can see in the following code, i am able to get the "y" coordinates of the pressed spot, since it's printed correctly. The problem is that even if i change the color of color_of_pressed_spot to the one i want, the color is not displayed since i would need to call setstate, but i cannot do it in that moment or i will get an error. Any idea on how to do it?

LineChartData mainData() {
    return LineChartData(
      lineTouchData: LineTouchData(
        touchTooltipData: LineTouchTooltipData(
          tooltipBgColor: color_of_pressed_spot,
          getTooltipItems: (List<LineBarSpot> spots) {
            return spots.map((spot) {
              print("Spot y: ${spot.y}");
              color_of_pressed_spot = changeColor(list_of_colors_i_want_to_use_for_each_spot_y, spot.y);

              return LineTooltipItem(
                getName(spot.y),
                const TextStyle(color: Colors.white),
              );
            }).toList();
          },
        ),
      ),);}

コントリビューターガイド