Почему мой трепещущий LineChart перестает рисовать в середине графика? - PullRequest
0 голосов
/ 05 августа 2020

, поэтому я недавно написал свое первое приложение для флаттера, и в какой-то момент мне захотелось отобразить LineChart с пакетом charts_flutter. В большинстве случаев это работает безупречно, но иногда график не растягивается до конца графика. К сожалению, мне не удалось точно воспроизвести эту ошибку, но я предполагаю, что это происходит, когда вы вводите около 10 записей (?). Вот так выглядит график, когда он не работает.

Я очень надеюсь, что кто-то может мне помочь, потому что у меня нет идей.

Вот мой код для диаграмма:

@override
  Widget build(BuildContext context) {
    final yTickFormatter = charts.BasicNumericTickFormatterSpec((num value) {
      return value.toStringAsFixed(2) + SettingsUtil.currency;
    });
    final customTickFormatter =
        charts.BasicNumericTickFormatterSpec((num value) {
      if (value == 0 && SettingsUtil.savingEntries.length > 1) {
        return SettingsUtil.savingEntries[1].getDateString();
      } else if (value == 0 && SettingsUtil.savingEntries.length <= 1) {
        return '';
      } else {
    return SettingsUtil.savingEntries[SettingsUtil.savingEntries.length - 1]
        .getDateString();
  }
});
return SizedBox(
  width: MediaQuery.of(context).size.width - 20,
  height: 200,
  child: charts.LineChart(seriesList,
      animate: animate,
      primaryMeasureAxis: charts.NumericAxisSpec(
        tickProviderSpec: charts.BasicNumericTickProviderSpec(
            desiredMinTickCount: 2, desiredMaxTickCount: 3),
        renderSpec: charts.GridlineRendererSpec(

            // Tick and Label styling here.
            labelStyle: charts.TextStyleSpec(
                fontSize: 15, // size in Pts.
                color: SettingsUtil.getChartTextColor())),
        tickFormatterSpec: yTickFormatter,
      ),
      domainAxis: charts.NumericAxisSpec(
        renderSpec: charts.SmallTickRendererSpec(
            // Tick and Label styling here.
            labelStyle: charts.TextStyleSpec(
              lineHeight: 3,
                fontSize: 13, // size in Pts.
                color: SettingsUtil.getChartTextColor())),
        tickProviderSpec:
            charts.BasicNumericTickProviderSpec(desiredTickCount: 2),
        tickFormatterSpec: customTickFormatter,
      ),
      customSeriesRenderers: [
        charts.LineRendererConfig(
            // ID used to link series to this renderer.
            customRendererId: 'customArea',
            includeArea: true,
            stacked: true),
      ]),
);

}

...