Open aseph8083 opened 3 years ago
import 'package:flutter/material.dart'; import 'package:charts_flutter/flutter.dart' as charts;
class SimpleSeriesLegend extends StatelessWidget {
final List
SimpleSeriesLegend(this.seriesList, {this.animate});
factory SimpleSeriesLegend.withSampleData() { return new SimpleSeriesLegend( _createSampleData(), // Disable animations for image tests. animate: false, ); }
@override Widget build(BuildContext context) { return new charts.BarChart( seriesList, animate: animate, barGroupingType: charts.BarGroupingType.grouped, // Add the series legend behavior to the chart to turn on series legends. // By default the legend will display above the chart. behaviors: [new charts.SeriesLegend()], ); }
/// Create series list with multiple series static List<charts.Series<OrdinalSales, String>> _createSampleData() { final desktopSalesData = [ new OrdinalSales('2014', 5), new OrdinalSales('2015', 25), new OrdinalSales('2016', 100), new OrdinalSales('2017', 75), ];
final tabletSalesData = [
new OrdinalSales('2014', 25),
new OrdinalSales('2015', 50),
new OrdinalSales('2016', 10),
new OrdinalSales('2017', 20),
];
final mobileSalesData = [
new OrdinalSales('2014', 10),
new OrdinalSales('2015', 15),
new OrdinalSales('2016', 50),
new OrdinalSales('2017', 45),
];
final otherSalesData = [
new OrdinalSales('2014', 20),
new OrdinalSales('2015', 35),
new OrdinalSales('2016', 15),
new OrdinalSales('2017', 10),
];
return [
new charts.Series<OrdinalSales, String>(
id: 'Desktop',
domainFn: (OrdinalSales sales, _) => sales.year,
measureFn: (OrdinalSales sales, _) => sales.sales,
data: desktopSalesData,
),
new charts.Series<OrdinalSales, String>(
id: 'Tablet',
domainFn: (OrdinalSales sales, _) => sales.year,
measureFn: (OrdinalSales sales, _) => sales.sales,
data: tabletSalesData,
),
new charts.Series<OrdinalSales, String>(
id: 'Mobile',
domainFn: (OrdinalSales sales, _) => sales.year,
measureFn: (OrdinalSales sales, _) => sales.sales,
data: mobileSalesData,
),
new charts.Series<OrdinalSales, String>(
id: 'Other',
domainFn: (OrdinalSales sales, _) => sales.year,
measureFn: (OrdinalSales sales, _) => sales.sales,
data: otherSalesData,
),
];
} }
/// Sample ordinal data type. class OrdinalSales { final String year; final int sales;
OrdinalSales(this.year, this.sales); }
I am having the same issue. Please help...
I am also facing the same issue. Please solve this issue.
Temporary fix, you could just do List.from(seriesList)
to solve the issue.
Thanks a lot, Habib. It is indeed fixed the issue.
You specify the type final List
Thanks a lot, Habib.
final List<charts.Series<dynamic, String>> seriesList;
List<Series<dynamic, String>> lstname=seriesList.cast<Series<dynamic, String>>();
error in line
@override Widget build(BuildContext context) { return new charts.BarChart( seriesList, //error in here animate: animate, barGroupingType: charts.BarGroupingType.grouped, // Add the series legend behavior to the chart to turn on series legends. // By default the legend will display above the chart. behaviors: [new charts.SeriesLegend()], ); }