buildChart method

Widget buildChart(
  1. List<FlSpot> spots,
  2. List<String> labels
)

Builds the line chart widget for the provided data.

spots - Y-axis points. labels - X-axis labels.

Implementation

Widget buildChart(List<FlSpot> spots, List<String> labels) {
  return Padding(
    padding: const EdgeInsets.all(16.0),
    child: LineChart(
      LineChartData(
        gridData: const FlGridData(show: false),
        titlesData: FlTitlesData(
          leftTitles: const AxisTitles(
            sideTitles: SideTitles(showTitles: true),
          ),
          bottomTitles: AxisTitles(
            sideTitles: SideTitles(
              showTitles: true,
              interval: 1,
              getTitlesWidget: (value, meta) {
                final index = value.toInt();
                return Padding(
                  padding: const EdgeInsets.only(top: 4.0),
                  child: Text(
                    index < labels.length ? labels[index] : '',
                    style: const TextStyle(fontSize: 10),
                  ),
                );
              },
            ),
          ),
        ),
        borderData: FlBorderData(show: true),
        lineBarsData: [
          LineChartBarData(
            spots: spots,
            isCurved: true,
            color: Colors.blueAccent,
            barWidth: 3,
            dotData: const FlDotData(show: false),
          ),
        ],
      ),
    ),
  );
}