Flutter Syncfusion SfCircularChart 自定义双值

问题描述 投票:0回答:1

我希望每个 ChartData 有一个自定义

maximumValue
,以便每个图表都有自己的值。

ChartData 看起来像这样(添加

totalCount
设置器)

class ChartData {
  ChartData(this.x, this.y, [this.totalCount]);
  final String x;
  final double y;
  final double? totalCount;
}

然后是它的数据实例化器

 final chartData = [
      ChartData('ONE', 3, 20),
      ChartData('TWO', 10, 100),
    ];

然后在实现中,当我想从

totalCount
添加
ChartData
时,如下所示:

SizedBox(
   height: 300.0,
   child: SfCircularChart(series: <CircularSeries>[
   // Renders radial bar chart
   RadialBarSeries<ChartData, String>(
      dataSource: chartData,
      xValueMapper: (ChartData data, _) => data.x,
      yValueMapper: (ChartData data, _) => data.y,
      maximumValue: (ChartData data, _) => data.totalCount,)
  ])),

我收到消息:

The argument type 'double? Function(ChartData, dynamic)' can't be assigned to the parameter type 'double?'

那么我如何获得双精度值

totalCount
来用
maximumValue
值而不是
double
填充
Function(ChartData, dynamic)

我环顾四周但找不到答案。这可能吗?

flutter dart syncfusion
1个回答
0
投票

我只需映射

chartData
就可以像这样访问
totalCount

SizedBox(
     height: 300.0,
     child: SfCircularChart(series: <CircularSeries>[
       ...chartData.map((data) {
        // Renders radial bar chart
        return RadialBarSeries<ChartData, String>(
        dataSource: chartData,
        xValueMapper: (ChartData data, _) => data.x,
        yValueMapper: (ChartData data, _) => data.y,
        maximumValue: data.totalCount,
         );
        }).toList(),
     ])),

所以这很有帮助

© www.soinside.com 2019 - 2024. All rights reserved.