1- import 'dart:collection' ;
21import 'dart:math' ;
2+ import 'dart:ui' ;
33
44import 'package:flutter/material.dart' ;
55import 'package:flutter_constraintlayout/flutter_constraintlayout.dart' ;
@@ -14,7 +14,7 @@ class ChartsExample extends StatefulWidget {
1414}
1515
1616class PolylinePainter extends CustomPainter {
17- Map < int , Rect > polylineData;
17+ List < Offset > polylineData;
1818
1919 PolylinePainter (this .polylineData);
2020
@@ -26,18 +26,7 @@ class PolylinePainter extends CustomPainter {
2626 Paint paint = Paint ()
2727 ..strokeWidth = 1
2828 ..color = Colors .green;
29- List <Rect > rectList = polylineData.values.toList ();
30- Rect last = rectList[0 ];
31- Rect current;
32- for (int i = 1 ; i < rectList.length; i++ ) {
33- current = rectList[i];
34- canvas.drawLine (
35- Offset (last.left + last.width / 2 , last.top + last.height),
36- Offset (
37- current.left + current.width / 2 , current.top + current.height),
38- paint);
39- last = current;
40- }
29+ canvas.drawPoints (PointMode .polygon, polylineData, paint);
4130 }
4231}
4332
@@ -47,7 +36,7 @@ class ChartsState extends State<ChartsExample> {
4736 late List <int > compareData;
4837 late int maxValue;
4938 int current = 6 ;
50- Map < int , Rect > polylineData = HashMap () ;
39+ late List < Offset > polylineData;
5140 ScrollController controller = ScrollController ();
5241
5342 @override
@@ -58,6 +47,7 @@ class ChartsState extends State<ChartsExample> {
5847 data = [for (int i = 0 ; i < xTitles.length; i++ ) 10 + random.nextInt (91 )];
5948 compareData = data.toList ()..shuffle ();
6049 maxValue = data.reduce (max);
50+ polylineData = List .filled (data.length, Offset .zero);
6151 }
6252
6353 @override
@@ -179,8 +169,8 @@ class ChartsState extends State<ChartsExample> {
179169 .bottomMargin ((compareData[i] / maxValue) * 400 ),
180170 translate: const Offset (0 , 0.5 ),
181171 percentageTranslate: true ,
182- callback : (_, rect) {
183- polylineData[i] = rect;
172+ layoutCallback : (_, rect) {
173+ polylineData[i] = rect.bottomCenter ;
184174 },
185175 ),
186176 Container (
0 commit comments