flet-charts 0.2.0.dev35__py3-none-any.whl → 0.70.0.dev6551__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of flet-charts might be problematic. Click here for more details.
- flet_charts/__init__.py +59 -17
- flet_charts/bar_chart.py +87 -30
- flet_charts/bar_chart_group.py +1 -2
- flet_charts/bar_chart_rod.py +36 -5
- flet_charts/candlestick_chart.py +269 -0
- flet_charts/candlestick_chart_spot.py +98 -0
- flet_charts/chart_axis.py +29 -9
- flet_charts/line_chart.py +76 -14
- flet_charts/line_chart_data.py +30 -5
- flet_charts/line_chart_data_point.py +33 -4
- flet_charts/matplotlib_backends/backend_flet_agg.py +16 -0
- flet_charts/matplotlib_chart.py +396 -36
- flet_charts/matplotlib_chart_with_toolbar.py +125 -0
- flet_charts/pie_chart.py +3 -6
- flet_charts/pie_chart_section.py +25 -18
- flet_charts/plotly_chart.py +17 -6
- flet_charts/radar_chart.py +214 -0
- flet_charts/radar_data_set.py +66 -0
- flet_charts/scatter_chart.py +75 -29
- flet_charts/scatter_chart_spot.py +44 -6
- flet_charts/types.py +159 -16
- flet_charts-0.70.0.dev6551.dist-info/METADATA +67 -0
- flet_charts-0.70.0.dev6551.dist-info/RECORD +47 -0
- flutter/flet_charts/CHANGELOG.md +1 -1
- flutter/flet_charts/LICENSE +1 -1
- flutter/flet_charts/analysis_options.yaml +1 -1
- flutter/flet_charts/lib/src/bar_chart.dart +2 -0
- flutter/flet_charts/lib/src/candlestick_chart.dart +129 -0
- flutter/flet_charts/lib/src/extension.dart +6 -0
- flutter/flet_charts/lib/src/radar_chart.dart +104 -0
- flutter/flet_charts/lib/src/scatter_chart.dart +22 -21
- flutter/flet_charts/lib/src/utils/bar_chart.dart +137 -73
- flutter/flet_charts/lib/src/utils/candlestick_chart.dart +118 -0
- flutter/flet_charts/lib/src/utils/charts.dart +12 -0
- flutter/flet_charts/lib/src/utils/line_chart.dart +15 -3
- flutter/flet_charts/lib/src/utils/pie_chart.dart +1 -0
- flutter/flet_charts/lib/src/utils/radar_chart.dart +90 -0
- flutter/flet_charts/lib/src/utils/scatter_chart.dart +22 -21
- flutter/flet_charts/pubspec.lock +85 -71
- flutter/flet_charts/pubspec.yaml +10 -9
- flet_charts-0.2.0.dev35.dist-info/METADATA +0 -69
- flet_charts-0.2.0.dev35.dist-info/RECORD +0 -38
- flutter/flet_charts/README.md +0 -3
- {flet_charts-0.2.0.dev35.dist-info → flet_charts-0.70.0.dev6551.dist-info}/WHEEL +0 -0
- {flet_charts-0.2.0.dev35.dist-info → flet_charts-0.70.0.dev6551.dist-info}/licenses/LICENSE +0 -0
- {flet_charts-0.2.0.dev35.dist-info → flet_charts-0.70.0.dev6551.dist-info}/top_level.txt +0 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
import 'package:collection/collection.dart';
|
|
2
|
+
import 'package:equatable/equatable.dart';
|
|
3
|
+
import 'package:fl_chart/fl_chart.dart';
|
|
4
|
+
import 'package:flet/flet.dart';
|
|
5
|
+
import 'package:flutter/material.dart';
|
|
6
|
+
|
|
7
|
+
import 'charts.dart';
|
|
8
|
+
|
|
9
|
+
RadarShape? parseRadarShape(String? value, [RadarShape? defaultValue]) {
|
|
10
|
+
if (value == null) return defaultValue;
|
|
11
|
+
return RadarShape.values.firstWhereOrNull(
|
|
12
|
+
(e) => e.name.toLowerCase() == value.toLowerCase()) ??
|
|
13
|
+
defaultValue;
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
class RadarChartEventData extends Equatable {
|
|
17
|
+
final String eventType;
|
|
18
|
+
final int? dataSetIndex;
|
|
19
|
+
final int? entryIndex;
|
|
20
|
+
final double? entryValue;
|
|
21
|
+
|
|
22
|
+
const RadarChartEventData({
|
|
23
|
+
required this.eventType,
|
|
24
|
+
this.dataSetIndex,
|
|
25
|
+
this.entryIndex,
|
|
26
|
+
this.entryValue,
|
|
27
|
+
});
|
|
28
|
+
|
|
29
|
+
factory RadarChartEventData.fromDetails(
|
|
30
|
+
FlTouchEvent event, RadarTouchResponse? response) {
|
|
31
|
+
final touchedSpot = response?.touchedSpot;
|
|
32
|
+
|
|
33
|
+
return RadarChartEventData(
|
|
34
|
+
eventType: eventMap[event.runtimeType.toString()] ?? "undefined",
|
|
35
|
+
dataSetIndex: touchedSpot?.touchedDataSetIndex,
|
|
36
|
+
entryIndex: touchedSpot?.touchedRadarEntryIndex,
|
|
37
|
+
entryValue: touchedSpot?.touchedRadarEntry.value,
|
|
38
|
+
);
|
|
39
|
+
}
|
|
40
|
+
|
|
41
|
+
Map<String, dynamic> toMap() => <String, dynamic>{
|
|
42
|
+
'type': eventType,
|
|
43
|
+
'data_set_index': dataSetIndex,
|
|
44
|
+
'entry_index': entryIndex,
|
|
45
|
+
'entry_value': entryValue,
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
@override
|
|
49
|
+
List<Object?> get props => [eventType, dataSetIndex, entryIndex, entryValue];
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
RadarDataSet parseRadarDataSet(
|
|
53
|
+
Control dataSet, ThemeData theme, BuildContext context) {
|
|
54
|
+
final fillColor = dataSet.getColor("fill_color", context, Colors.cyan)!;
|
|
55
|
+
final fillGradient = dataSet.getGradient("fill_gradient", theme);
|
|
56
|
+
final borderColor = dataSet.getColor("border_color", context, Colors.cyan)!;
|
|
57
|
+
final borderWidth = dataSet.getDouble("border_width", 2.0)!;
|
|
58
|
+
final entryRadius = dataSet.getDouble("entry_radius", 5.0)!;
|
|
59
|
+
|
|
60
|
+
final entries = dataSet
|
|
61
|
+
.children("entries")
|
|
62
|
+
.map((entry) => RadarEntry(value: entry.getDouble("value", 0)!))
|
|
63
|
+
.toList();
|
|
64
|
+
|
|
65
|
+
return RadarDataSet(
|
|
66
|
+
dataEntries: entries,
|
|
67
|
+
fillColor: fillColor,
|
|
68
|
+
fillGradient: fillGradient,
|
|
69
|
+
borderColor: borderColor,
|
|
70
|
+
borderWidth: borderWidth,
|
|
71
|
+
entryRadius: entryRadius,
|
|
72
|
+
);
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
RadarChartTitle parseRadarChartTitle(
|
|
76
|
+
Control title, ThemeData theme, double defaultAngle) {
|
|
77
|
+
final spansValue = title.get("text_spans");
|
|
78
|
+
final spans = spansValue != null
|
|
79
|
+
? parseTextSpans(spansValue, theme, (control, eventName, [eventData]) {
|
|
80
|
+
control.triggerEvent(eventName, eventData);
|
|
81
|
+
})
|
|
82
|
+
: null;
|
|
83
|
+
|
|
84
|
+
return RadarChartTitle(
|
|
85
|
+
text: title.getString("text", "")!,
|
|
86
|
+
angle: title.getDouble("angle") ?? defaultAngle,
|
|
87
|
+
positionPercentageOffset: title.getDouble("position_percentage_offset"),
|
|
88
|
+
children: spans,
|
|
89
|
+
);
|
|
90
|
+
}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
import 'package:collection/collection.dart';
|
|
2
1
|
import 'package:equatable/equatable.dart';
|
|
3
2
|
import 'package:fl_chart/fl_chart.dart';
|
|
4
3
|
import 'package:flet/flet.dart';
|
|
@@ -25,34 +24,31 @@ class ScatterChartEventData extends Equatable {
|
|
|
25
24
|
List<Object?> get props => [eventType, spotIndex];
|
|
26
25
|
}
|
|
27
26
|
|
|
28
|
-
ScatterTouchTooltipData
|
|
29
|
-
BuildContext context, Control control, List<ScatterSpot> spots
|
|
30
|
-
|
|
31
|
-
var tooltip = control.get("tooltip");
|
|
32
|
-
if (tooltip == null) return defaultValue;
|
|
27
|
+
ScatterTouchTooltipData parseScatterTouchTooltipData(
|
|
28
|
+
BuildContext context, Control control, List<ScatterSpot> spots) {
|
|
29
|
+
var tooltip = control.get("tooltip") ?? {};
|
|
33
30
|
|
|
34
31
|
final theme = Theme.of(context);
|
|
35
32
|
|
|
36
33
|
return ScatterTouchTooltipData(
|
|
37
34
|
tooltipBorder: parseBorderSide(tooltip["border_side"], theme,
|
|
38
35
|
defaultValue: BorderSide.none)!,
|
|
39
|
-
rotateAngle: parseDouble(tooltip["
|
|
40
|
-
maxContentWidth: parseDouble(tooltip["max_width"])
|
|
41
|
-
tooltipPadding: parsePadding(tooltip["padding"]
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
36
|
+
rotateAngle: parseDouble(tooltip["rotation"], 0.0)!,
|
|
37
|
+
maxContentWidth: parseDouble(tooltip["max_width"], 120)!,
|
|
38
|
+
tooltipPadding: parsePadding(tooltip["padding"],
|
|
39
|
+
const EdgeInsets.symmetric(horizontal: 16, vertical: 8))!,
|
|
40
|
+
tooltipHorizontalAlignment: parseFLHorizontalAlignment(
|
|
41
|
+
tooltip["horizontal_alignment"], FLHorizontalAlignment.center)!,
|
|
42
|
+
tooltipHorizontalOffset: parseDouble(tooltip["horizontal_offset"], 0),
|
|
45
43
|
tooltipBorderRadius: parseBorderRadius(tooltip["border_radius"]),
|
|
46
|
-
fitInsideHorizontally:
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
// spots.indexWhere((spot) => spot.x == spot.x && spot.y == spot.y);
|
|
51
|
-
// var dp = control.children("spots")[spotIndex];
|
|
44
|
+
fitInsideHorizontally:
|
|
45
|
+
parseBool(tooltip["fit_inside_horizontally"], false)!,
|
|
46
|
+
fitInsideVertically: parseBool(tooltip["fit_inside_vertically"], false)!,
|
|
47
|
+
getTooltipColor: (ScatterSpot touchedSpot) {
|
|
52
48
|
return parseColor(
|
|
53
49
|
tooltip["bgcolor"], theme, const Color.fromRGBO(96, 125, 139, 1))!;
|
|
54
50
|
},
|
|
55
|
-
getTooltipItems: (touchedSpot) {
|
|
51
|
+
getTooltipItems: (ScatterSpot touchedSpot) {
|
|
56
52
|
var spotIndex = spots.indexWhere(
|
|
57
53
|
(spot) => spot.x == touchedSpot.x && spot.y == touchedSpot.y);
|
|
58
54
|
return parseScatterTooltipItem(
|
|
@@ -65,9 +61,10 @@ ScatterTooltipItem? parseScatterTooltipItem(
|
|
|
65
61
|
Control dataPoint, ScatterSpot spot, BuildContext context) {
|
|
66
62
|
if (!dataPoint.getBool("show_tooltip", true)!) return null;
|
|
67
63
|
|
|
68
|
-
|
|
64
|
+
var tooltip = dataPoint.internals?["tooltip"];
|
|
65
|
+
if (tooltip == null) return null;
|
|
69
66
|
|
|
70
|
-
|
|
67
|
+
final theme = Theme.of(context);
|
|
71
68
|
var style = parseTextStyle(tooltip["text_style"], theme, const TextStyle())!;
|
|
72
69
|
if (style.color == null) {
|
|
73
70
|
style = style.copyWith(color: spot.dotPainter.mainColor);
|
|
@@ -76,6 +73,10 @@ ScatterTooltipItem? parseScatterTooltipItem(
|
|
|
76
73
|
tooltip["text"] ?? dataPoint.getDouble("y").toString(),
|
|
77
74
|
textStyle: style,
|
|
78
75
|
textAlign: parseTextAlign(tooltip["text_align"], TextAlign.center)!,
|
|
76
|
+
textDirection: parseBool(tooltip["rtl"], false)!
|
|
77
|
+
? TextDirection.rtl
|
|
78
|
+
: TextDirection.ltr,
|
|
79
|
+
bottomMargin: parseDouble(tooltip["bottom_margin"]),
|
|
79
80
|
children: tooltip["text_spans"] != null
|
|
80
81
|
? parseTextSpans(tooltip["text_spans"], theme, (s, eventName,
|
|
81
82
|
[eventData]) {
|
flutter/flet_charts/pubspec.lock
CHANGED
|
@@ -13,10 +13,10 @@ packages:
|
|
|
13
13
|
dependency: transitive
|
|
14
14
|
description:
|
|
15
15
|
name: async
|
|
16
|
-
sha256:
|
|
16
|
+
sha256: "758e6d74e971c3e5aceb4110bfd6698efc7f501675bcfe0c775459a8140750eb"
|
|
17
17
|
url: "https://pub.dev"
|
|
18
18
|
source: hosted
|
|
19
|
-
version: "2.
|
|
19
|
+
version: "2.13.0"
|
|
20
20
|
boolean_selector:
|
|
21
21
|
dependency: transitive
|
|
22
22
|
description:
|
|
@@ -53,26 +53,34 @@ packages:
|
|
|
53
53
|
dependency: transitive
|
|
54
54
|
description:
|
|
55
55
|
name: cross_file
|
|
56
|
-
sha256: "
|
|
56
|
+
sha256: "942a4791cd385a68ccb3b32c71c427aba508a1bb949b86dff2adbe4049f16239"
|
|
57
57
|
url: "https://pub.dev"
|
|
58
58
|
source: hosted
|
|
59
|
-
version: "0.3.
|
|
59
|
+
version: "0.3.5"
|
|
60
60
|
crypto:
|
|
61
61
|
dependency: transitive
|
|
62
62
|
description:
|
|
63
63
|
name: crypto
|
|
64
|
-
sha256:
|
|
64
|
+
sha256: c8ea0233063ba03258fbcf2ca4d6dadfefe14f02fab57702265467a19f27fadf
|
|
65
65
|
url: "https://pub.dev"
|
|
66
66
|
source: hosted
|
|
67
|
-
version: "3.0.
|
|
67
|
+
version: "3.0.7"
|
|
68
|
+
dbus:
|
|
69
|
+
dependency: transitive
|
|
70
|
+
description:
|
|
71
|
+
name: dbus
|
|
72
|
+
sha256: "79e0c23480ff85dc68de79e2cd6334add97e48f7f4865d17686dd6ea81a47e8c"
|
|
73
|
+
url: "https://pub.dev"
|
|
74
|
+
source: hosted
|
|
75
|
+
version: "0.7.11"
|
|
68
76
|
device_info_plus:
|
|
69
77
|
dependency: transitive
|
|
70
78
|
description:
|
|
71
79
|
name: device_info_plus
|
|
72
|
-
sha256:
|
|
80
|
+
sha256: dd0e8e02186b2196c7848c9d394a5fd6e5b57a43a546082c5820b1ec72317e33
|
|
73
81
|
url: "https://pub.dev"
|
|
74
82
|
source: hosted
|
|
75
|
-
version: "
|
|
83
|
+
version: "12.2.0"
|
|
76
84
|
device_info_plus_platform_interface:
|
|
77
85
|
dependency: transitive
|
|
78
86
|
description:
|
|
@@ -93,10 +101,10 @@ packages:
|
|
|
93
101
|
dependency: transitive
|
|
94
102
|
description:
|
|
95
103
|
name: fake_async
|
|
96
|
-
sha256: "
|
|
104
|
+
sha256: "5368f224a74523e8d2e7399ea1638b37aecfca824a3cc4dfdf77bf1fa905ac44"
|
|
97
105
|
url: "https://pub.dev"
|
|
98
106
|
source: hosted
|
|
99
|
-
version: "1.3.
|
|
107
|
+
version: "1.3.3"
|
|
100
108
|
ffi:
|
|
101
109
|
dependency: transitive
|
|
102
110
|
description:
|
|
@@ -117,26 +125,24 @@ packages:
|
|
|
117
125
|
dependency: transitive
|
|
118
126
|
description:
|
|
119
127
|
name: file_picker
|
|
120
|
-
sha256:
|
|
128
|
+
sha256: f2d9f173c2c14635cc0e9b14c143c49ef30b4934e8d1d274d6206fcb0086a06f
|
|
121
129
|
url: "https://pub.dev"
|
|
122
130
|
source: hosted
|
|
123
|
-
version: "10.
|
|
131
|
+
version: "10.3.3"
|
|
124
132
|
fl_chart:
|
|
125
133
|
dependency: "direct main"
|
|
126
134
|
description:
|
|
127
135
|
name: fl_chart
|
|
128
|
-
sha256: "
|
|
136
|
+
sha256: "7ca9a40f4eb85949190e54087be8b4d6ac09dc4c54238d782a34cf1f7c011de9"
|
|
129
137
|
url: "https://pub.dev"
|
|
130
138
|
source: hosted
|
|
131
|
-
version: "1.
|
|
139
|
+
version: "1.1.1"
|
|
132
140
|
flet:
|
|
133
141
|
dependency: "direct main"
|
|
134
142
|
description:
|
|
135
|
-
path: "packages/flet"
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
url: "https://github.com/flet-dev/flet.git"
|
|
139
|
-
source: git
|
|
143
|
+
path: "../../../../../../../packages/flet"
|
|
144
|
+
relative: true
|
|
145
|
+
source: path
|
|
140
146
|
version: "0.70.0"
|
|
141
147
|
flutter:
|
|
142
148
|
dependency: "direct main"
|
|
@@ -176,18 +182,18 @@ packages:
|
|
|
176
182
|
dependency: transitive
|
|
177
183
|
description:
|
|
178
184
|
name: flutter_plugin_android_lifecycle
|
|
179
|
-
sha256:
|
|
185
|
+
sha256: "306f0596590e077338312f38837f595c04f28d6cdeeac392d3d74df2f0003687"
|
|
180
186
|
url: "https://pub.dev"
|
|
181
187
|
source: hosted
|
|
182
|
-
version: "2.0.
|
|
188
|
+
version: "2.0.32"
|
|
183
189
|
flutter_svg:
|
|
184
190
|
dependency: transitive
|
|
185
191
|
description:
|
|
186
192
|
name: flutter_svg
|
|
187
|
-
sha256:
|
|
193
|
+
sha256: b9c2ad5872518a27507ab432d1fb97e8813b05f0fc693f9d40fad06d073e0678
|
|
188
194
|
url: "https://pub.dev"
|
|
189
195
|
source: hosted
|
|
190
|
-
version: "2.1
|
|
196
|
+
version: "2.2.1"
|
|
191
197
|
flutter_test:
|
|
192
198
|
dependency: "direct dev"
|
|
193
199
|
description: flutter
|
|
@@ -210,10 +216,10 @@ packages:
|
|
|
210
216
|
dependency: transitive
|
|
211
217
|
description:
|
|
212
218
|
name: http
|
|
213
|
-
sha256:
|
|
219
|
+
sha256: bb2ce4590bc2667c96f318d68cac1b5a7987ec819351d32b1c987239a815e007
|
|
214
220
|
url: "https://pub.dev"
|
|
215
221
|
source: hosted
|
|
216
|
-
version: "1.
|
|
222
|
+
version: "1.5.0"
|
|
217
223
|
http_parser:
|
|
218
224
|
dependency: transitive
|
|
219
225
|
description:
|
|
@@ -226,10 +232,10 @@ packages:
|
|
|
226
232
|
dependency: transitive
|
|
227
233
|
description:
|
|
228
234
|
name: intl
|
|
229
|
-
sha256:
|
|
235
|
+
sha256: "3df61194eb431efc39c4ceba583b95633a403f46c9fd341e550ce0bfa50e9aa5"
|
|
230
236
|
url: "https://pub.dev"
|
|
231
237
|
source: hosted
|
|
232
|
-
version: "0.
|
|
238
|
+
version: "0.20.2"
|
|
233
239
|
json_annotation:
|
|
234
240
|
dependency: transitive
|
|
235
241
|
description:
|
|
@@ -242,26 +248,26 @@ packages:
|
|
|
242
248
|
dependency: transitive
|
|
243
249
|
description:
|
|
244
250
|
name: leak_tracker
|
|
245
|
-
sha256:
|
|
251
|
+
sha256: "33e2e26bdd85a0112ec15400c8cbffea70d0f9c3407491f672a2fad47915e2de"
|
|
246
252
|
url: "https://pub.dev"
|
|
247
253
|
source: hosted
|
|
248
|
-
version: "
|
|
254
|
+
version: "11.0.2"
|
|
249
255
|
leak_tracker_flutter_testing:
|
|
250
256
|
dependency: transitive
|
|
251
257
|
description:
|
|
252
258
|
name: leak_tracker_flutter_testing
|
|
253
|
-
sha256:
|
|
259
|
+
sha256: "1dbc140bb5a23c75ea9c4811222756104fbcd1a27173f0c34ca01e16bea473c1"
|
|
254
260
|
url: "https://pub.dev"
|
|
255
261
|
source: hosted
|
|
256
|
-
version: "3.0.
|
|
262
|
+
version: "3.0.10"
|
|
257
263
|
leak_tracker_testing:
|
|
258
264
|
dependency: transitive
|
|
259
265
|
description:
|
|
260
266
|
name: leak_tracker_testing
|
|
261
|
-
sha256: "
|
|
267
|
+
sha256: "8d5a2d49f4a66b49744b23b018848400d23e54caf9463f4eb20df3eb8acb2eb1"
|
|
262
268
|
url: "https://pub.dev"
|
|
263
269
|
source: hosted
|
|
264
|
-
version: "3.0.
|
|
270
|
+
version: "3.0.2"
|
|
265
271
|
lints:
|
|
266
272
|
dependency: transitive
|
|
267
273
|
description:
|
|
@@ -354,18 +360,18 @@ packages:
|
|
|
354
360
|
dependency: transitive
|
|
355
361
|
description:
|
|
356
362
|
name: path_provider_android
|
|
357
|
-
sha256:
|
|
363
|
+
sha256: e122c5ea805bb6773bb12ce667611265980940145be920cd09a4b0ec0285cb16
|
|
358
364
|
url: "https://pub.dev"
|
|
359
365
|
source: hosted
|
|
360
|
-
version: "2.2.
|
|
366
|
+
version: "2.2.20"
|
|
361
367
|
path_provider_foundation:
|
|
362
368
|
dependency: transitive
|
|
363
369
|
description:
|
|
364
370
|
name: path_provider_foundation
|
|
365
|
-
sha256:
|
|
371
|
+
sha256: efaec349ddfc181528345c56f8eda9d6cccd71c177511b132c6a0ddaefaa2738
|
|
366
372
|
url: "https://pub.dev"
|
|
367
373
|
source: hosted
|
|
368
|
-
version: "2.4.
|
|
374
|
+
version: "2.4.3"
|
|
369
375
|
path_provider_linux:
|
|
370
376
|
dependency: transitive
|
|
371
377
|
description:
|
|
@@ -394,10 +400,10 @@ packages:
|
|
|
394
400
|
dependency: transitive
|
|
395
401
|
description:
|
|
396
402
|
name: petitparser
|
|
397
|
-
sha256: "
|
|
403
|
+
sha256: "1a97266a94f7350d30ae522c0af07890c70b8e62c71e8e3920d1db4d23c057d1"
|
|
398
404
|
url: "https://pub.dev"
|
|
399
405
|
source: hosted
|
|
400
|
-
version: "
|
|
406
|
+
version: "7.0.1"
|
|
401
407
|
platform:
|
|
402
408
|
dependency: transitive
|
|
403
409
|
description:
|
|
@@ -418,10 +424,10 @@ packages:
|
|
|
418
424
|
dependency: transitive
|
|
419
425
|
description:
|
|
420
426
|
name: provider
|
|
421
|
-
sha256: "
|
|
427
|
+
sha256: "4e82183fa20e5ca25703ead7e05de9e4cceed1fbd1eadc1ac3cb6f565a09f272"
|
|
422
428
|
url: "https://pub.dev"
|
|
423
429
|
source: hosted
|
|
424
|
-
version: "6.1.5"
|
|
430
|
+
version: "6.1.5+1"
|
|
425
431
|
screen_retriever:
|
|
426
432
|
dependency: transitive
|
|
427
433
|
description:
|
|
@@ -462,14 +468,22 @@ packages:
|
|
|
462
468
|
url: "https://pub.dev"
|
|
463
469
|
source: hosted
|
|
464
470
|
version: "0.2.0"
|
|
471
|
+
screenshot:
|
|
472
|
+
dependency: transitive
|
|
473
|
+
description:
|
|
474
|
+
name: screenshot
|
|
475
|
+
sha256: "63817697a7835e6ce82add4228e15d233b74d42975c143ad8cfe07009fab866b"
|
|
476
|
+
url: "https://pub.dev"
|
|
477
|
+
source: hosted
|
|
478
|
+
version: "3.0.0"
|
|
465
479
|
sensors_plus:
|
|
466
480
|
dependency: transitive
|
|
467
481
|
description:
|
|
468
482
|
name: sensors_plus
|
|
469
|
-
sha256: "
|
|
483
|
+
sha256: "89e2bfc3d883743539ce5774a2b93df61effde40ff958ecad78cd66b1a8b8d52"
|
|
470
484
|
url: "https://pub.dev"
|
|
471
485
|
source: hosted
|
|
472
|
-
version: "6.1.
|
|
486
|
+
version: "6.1.2"
|
|
473
487
|
sensors_plus_platform_interface:
|
|
474
488
|
dependency: transitive
|
|
475
489
|
description:
|
|
@@ -482,26 +496,26 @@ packages:
|
|
|
482
496
|
dependency: transitive
|
|
483
497
|
description:
|
|
484
498
|
name: shared_preferences
|
|
485
|
-
sha256: "
|
|
499
|
+
sha256: "6e8bf70b7fef813df4e9a36f658ac46d107db4b4cfe1048b477d4e453a8159f5"
|
|
486
500
|
url: "https://pub.dev"
|
|
487
501
|
source: hosted
|
|
488
|
-
version: "2.5.
|
|
502
|
+
version: "2.5.3"
|
|
489
503
|
shared_preferences_android:
|
|
490
504
|
dependency: transitive
|
|
491
505
|
description:
|
|
492
506
|
name: shared_preferences_android
|
|
493
|
-
sha256: "
|
|
507
|
+
sha256: "34266009473bf71d748912da4bf62d439185226c03e01e2d9687bc65bbfcb713"
|
|
494
508
|
url: "https://pub.dev"
|
|
495
509
|
source: hosted
|
|
496
|
-
version: "2.4.
|
|
510
|
+
version: "2.4.15"
|
|
497
511
|
shared_preferences_foundation:
|
|
498
512
|
dependency: transitive
|
|
499
513
|
description:
|
|
500
514
|
name: shared_preferences_foundation
|
|
501
|
-
sha256: "
|
|
515
|
+
sha256: "1c33a907142607c40a7542768ec9badfd16293bac51da3a4482623d15845f88b"
|
|
502
516
|
url: "https://pub.dev"
|
|
503
517
|
source: hosted
|
|
504
|
-
version: "2.5.
|
|
518
|
+
version: "2.5.5"
|
|
505
519
|
shared_preferences_linux:
|
|
506
520
|
dependency: transitive
|
|
507
521
|
description:
|
|
@@ -583,10 +597,10 @@ packages:
|
|
|
583
597
|
dependency: transitive
|
|
584
598
|
description:
|
|
585
599
|
name: test_api
|
|
586
|
-
sha256:
|
|
600
|
+
sha256: "522f00f556e73044315fa4585ec3270f1808a4b186c936e612cab0b565ff1e00"
|
|
587
601
|
url: "https://pub.dev"
|
|
588
602
|
source: hosted
|
|
589
|
-
version: "0.7.
|
|
603
|
+
version: "0.7.6"
|
|
590
604
|
typed_data:
|
|
591
605
|
dependency: transitive
|
|
592
606
|
description:
|
|
@@ -599,26 +613,26 @@ packages:
|
|
|
599
613
|
dependency: transitive
|
|
600
614
|
description:
|
|
601
615
|
name: url_launcher
|
|
602
|
-
sha256:
|
|
616
|
+
sha256: f6a7e5c4835bb4e3026a04793a4199ca2d14c739ec378fdfe23fc8075d0439f8
|
|
603
617
|
url: "https://pub.dev"
|
|
604
618
|
source: hosted
|
|
605
|
-
version: "6.3.
|
|
619
|
+
version: "6.3.2"
|
|
606
620
|
url_launcher_android:
|
|
607
621
|
dependency: transitive
|
|
608
622
|
description:
|
|
609
623
|
name: url_launcher_android
|
|
610
|
-
sha256: "
|
|
624
|
+
sha256: "5c8b6c2d89a78f5a1cca70a73d9d5f86c701b36b42f9c9dac7bad592113c28e9"
|
|
611
625
|
url: "https://pub.dev"
|
|
612
626
|
source: hosted
|
|
613
|
-
version: "6.3.
|
|
627
|
+
version: "6.3.24"
|
|
614
628
|
url_launcher_ios:
|
|
615
629
|
dependency: transitive
|
|
616
630
|
description:
|
|
617
631
|
name: url_launcher_ios
|
|
618
|
-
sha256: "
|
|
632
|
+
sha256: "6b63f1441e4f653ae799166a72b50b1767321ecc263a57aadf825a7a2a5477d9"
|
|
619
633
|
url: "https://pub.dev"
|
|
620
634
|
source: hosted
|
|
621
|
-
version: "6.3.
|
|
635
|
+
version: "6.3.5"
|
|
622
636
|
url_launcher_linux:
|
|
623
637
|
dependency: transitive
|
|
624
638
|
description:
|
|
@@ -631,10 +645,10 @@ packages:
|
|
|
631
645
|
dependency: transitive
|
|
632
646
|
description:
|
|
633
647
|
name: url_launcher_macos
|
|
634
|
-
sha256: "
|
|
648
|
+
sha256: "8262208506252a3ed4ff5c0dc1e973d2c0e0ef337d0a074d35634da5d44397c9"
|
|
635
649
|
url: "https://pub.dev"
|
|
636
650
|
source: hosted
|
|
637
|
-
version: "3.2.
|
|
651
|
+
version: "3.2.4"
|
|
638
652
|
url_launcher_platform_interface:
|
|
639
653
|
dependency: transitive
|
|
640
654
|
description:
|
|
@@ -679,26 +693,26 @@ packages:
|
|
|
679
693
|
dependency: transitive
|
|
680
694
|
description:
|
|
681
695
|
name: vector_graphics_compiler
|
|
682
|
-
sha256:
|
|
696
|
+
sha256: d354a7ec6931e6047785f4db12a1f61ec3d43b207fc0790f863818543f8ff0dc
|
|
683
697
|
url: "https://pub.dev"
|
|
684
698
|
source: hosted
|
|
685
|
-
version: "1.1.
|
|
699
|
+
version: "1.1.19"
|
|
686
700
|
vector_math:
|
|
687
701
|
dependency: transitive
|
|
688
702
|
description:
|
|
689
703
|
name: vector_math
|
|
690
|
-
sha256:
|
|
704
|
+
sha256: d530bd74fea330e6e364cda7a85019c434070188383e1cd8d9777ee586914c5b
|
|
691
705
|
url: "https://pub.dev"
|
|
692
706
|
source: hosted
|
|
693
|
-
version: "2.
|
|
707
|
+
version: "2.2.0"
|
|
694
708
|
vm_service:
|
|
695
709
|
dependency: transitive
|
|
696
710
|
description:
|
|
697
711
|
name: vm_service
|
|
698
|
-
sha256: "
|
|
712
|
+
sha256: "45caa6c5917fa127b5dbcfbd1fa60b14e583afdc08bfc96dda38886ca252eb60"
|
|
699
713
|
url: "https://pub.dev"
|
|
700
714
|
source: hosted
|
|
701
|
-
version: "
|
|
715
|
+
version: "15.0.2"
|
|
702
716
|
web:
|
|
703
717
|
dependency: transitive
|
|
704
718
|
description:
|
|
@@ -727,10 +741,10 @@ packages:
|
|
|
727
741
|
dependency: transitive
|
|
728
742
|
description:
|
|
729
743
|
name: win32
|
|
730
|
-
sha256:
|
|
744
|
+
sha256: d7cb55e04cd34096cd3a79b3330245f54cb96a370a1c27adb3c84b917de8b08e
|
|
731
745
|
url: "https://pub.dev"
|
|
732
746
|
source: hosted
|
|
733
|
-
version: "5.
|
|
747
|
+
version: "5.15.0"
|
|
734
748
|
win32_registry:
|
|
735
749
|
dependency: transitive
|
|
736
750
|
description:
|
|
@@ -767,10 +781,10 @@ packages:
|
|
|
767
781
|
dependency: transitive
|
|
768
782
|
description:
|
|
769
783
|
name: xml
|
|
770
|
-
sha256:
|
|
784
|
+
sha256: "971043b3a0d3da28727e40ed3e0b5d18b742fa5a68665cca88e74b7876d5e025"
|
|
771
785
|
url: "https://pub.dev"
|
|
772
786
|
source: hosted
|
|
773
|
-
version: "6.
|
|
787
|
+
version: "6.6.1"
|
|
774
788
|
sdks:
|
|
775
|
-
dart: ">=3.
|
|
776
|
-
flutter: ">=3.
|
|
789
|
+
dart: ">=3.9.0 <4.0.0"
|
|
790
|
+
flutter: ">=3.35.0"
|
flutter/flet_charts/pubspec.yaml
CHANGED
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
name: flet_charts
|
|
2
2
|
description: A Flet extension for creating interactive charts and graphs.
|
|
3
|
-
|
|
4
|
-
repository: https://github.com/flet-dev/flet-charts/src/flutter/flet_charts
|
|
5
|
-
version: 0.2.0
|
|
3
|
+
version: 0.1.0
|
|
6
4
|
publish_to: none
|
|
5
|
+
|
|
7
6
|
environment:
|
|
8
7
|
sdk: '>=3.2.3 <4.0.0'
|
|
9
|
-
flutter:
|
|
8
|
+
flutter: ">=1.17.0"
|
|
9
|
+
|
|
10
10
|
dependencies:
|
|
11
11
|
flutter:
|
|
12
12
|
sdk: flutter
|
|
13
|
+
|
|
14
|
+
|
|
13
15
|
collection: ^1.16.0
|
|
14
16
|
equatable: ^2.0.3
|
|
15
|
-
fl_chart: 1.
|
|
17
|
+
fl_chart: 1.1.1
|
|
18
|
+
|
|
16
19
|
flet:
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
path: packages/flet
|
|
20
|
-
ref: main
|
|
20
|
+
path: ../../../../../../../packages/flet
|
|
21
|
+
|
|
21
22
|
dev_dependencies:
|
|
22
23
|
flutter_test:
|
|
23
24
|
sdk: flutter
|
|
@@ -1,69 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: flet-charts
|
|
3
|
-
Version: 0.2.0.dev35
|
|
4
|
-
Summary: A Flet extension for creating interactive charts and graphs.
|
|
5
|
-
Author-email: Flet contributors <hello@flet.dev>
|
|
6
|
-
License-Expression: Apache-2.0
|
|
7
|
-
Project-URL: Homepage, https://flet.dev
|
|
8
|
-
Project-URL: Documentation, https://flet-dev.github.io/flet-charts
|
|
9
|
-
Project-URL: Repository, https://github.com/flet-dev/flet-charts
|
|
10
|
-
Project-URL: Issues, https://github.com/flet-dev/flet-charts/issues
|
|
11
|
-
Requires-Python: >=3.10
|
|
12
|
-
Description-Content-Type: text/markdown
|
|
13
|
-
License-File: LICENSE
|
|
14
|
-
Requires-Dist: flet>=0.70.0.dev0
|
|
15
|
-
Provides-Extra: all
|
|
16
|
-
Requires-Dist: plotly>=6.0.1; extra == "all"
|
|
17
|
-
Requires-Dist: matplotlib>=3.10.1; extra == "all"
|
|
18
|
-
Provides-Extra: plotly
|
|
19
|
-
Requires-Dist: plotly>=6.0.1; extra == "plotly"
|
|
20
|
-
Provides-Extra: matplotlib
|
|
21
|
-
Requires-Dist: matplotlib>=3.10.1; extra == "matplotlib"
|
|
22
|
-
Dynamic: license-file
|
|
23
|
-
|
|
24
|
-
# flet-charts
|
|
25
|
-
|
|
26
|
-
[](https://pypi.python.org/pypi/flet-charts)
|
|
27
|
-
[](https://pepy.tech/project/flet-charts)
|
|
28
|
-
[](https://github.com/flet-dev/flet-charts/blob/main/LICENSE)
|
|
29
|
-
|
|
30
|
-
A [Flet](https://flet.dev) extension for creating interactive charts and graphs.
|
|
31
|
-
|
|
32
|
-
It is based on the [fl_chart](https://pub.dev/packages/fl_chart) Flutter package.
|
|
33
|
-
|
|
34
|
-
## Documentation
|
|
35
|
-
|
|
36
|
-
Detailed documentation to this package can be found [here](https://flet-dev.github.io/flet-charts/).
|
|
37
|
-
|
|
38
|
-
## Platform Support
|
|
39
|
-
|
|
40
|
-
This package supports the following platforms:
|
|
41
|
-
|
|
42
|
-
| Platform | Supported |
|
|
43
|
-
|----------|:---------:|
|
|
44
|
-
| Windows | ✅ |
|
|
45
|
-
| macOS | ✅ |
|
|
46
|
-
| Linux | ✅ |
|
|
47
|
-
| iOS | ✅ |
|
|
48
|
-
| Android | ✅ |
|
|
49
|
-
| Web | ✅ |
|
|
50
|
-
|
|
51
|
-
## Installation
|
|
52
|
-
|
|
53
|
-
To install the `flet-charts` package and add it to your project dependencies:
|
|
54
|
-
|
|
55
|
-
- Using `uv`:
|
|
56
|
-
```bash
|
|
57
|
-
uv add flet-charts
|
|
58
|
-
```
|
|
59
|
-
|
|
60
|
-
- Using `pip`:
|
|
61
|
-
```bash
|
|
62
|
-
pip install flet-charts
|
|
63
|
-
```
|
|
64
|
-
After this, you will have to manually add this package to your `requirements.txt` or `pyproject.toml`.
|
|
65
|
-
|
|
66
|
-
- Using `poetry`:
|
|
67
|
-
```bash
|
|
68
|
-
poetry add flet-charts
|
|
69
|
-
```
|