data property
List<LineChartBarData>
get
data
Implementation
List<LineChartBarData> get data {
if (!isDirty) {
return _data;
}
List<LineChartBarData> chartData = [];
for (Map m in metaData) {
LineChartBarData lineData;
Color? color;
List<FlSpot> spots = [];
int colorValue = 0;
m.forEach((key, value) {
if (key == 'color') {
colorValue = value;
color = Color(colorValue);
} else if (key == 'data') {
for (var i = 0; i < (value as List).length; i++) {
dynamic metaValue = value[i];
double val;
if (metaValue is int) {
val = metaValue.toDouble();
} else if (metaValue is String) {
val = double.parse(metaValue);
} else if (metaValue is double) {
val = metaValue;
} else {
throw Exception(
"Only double values are allowed for data in linecharts");
}
spots.add(FlSpot(i.toDouble(), val));
}
}
});
chartData.add(LineChartBarData(
isCurved: properties.curved,
color: color,
barWidth: 2,
isStrokeCapRound: true,
dotData: FlDotData(show: false),
belowBarData: BarAreaData(
show: properties.asArea,
color: Color(colorValue).withValues(alpha: 0.2)),
spots: spots));
}
isDirty = false;
data = chartData;
return _data;
}
set
data
(List<LineChartBarData> l)
Implementation
set data(List<LineChartBarData> l) {
_data = l;
dispatchChanges(KeyValue('data', _data));
}