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));
}