Open huang-weilong opened 6 years ago
Suppose my pie chart has two data A, B. When A occupies 100% and B is 0%, the pie chart does not display anything.
here is my code:
import 'package:flutter/material.dart'; import 'package:charts_flutter/flutter.dart' as charts; import 'dart:math'; class SimplePieChart extends StatefulWidget { @override _SimplePieChartState createState() => _SimplePieChartState(); } class _SimplePieChartState extends State<SimplePieChart> { List<charts.Series> seriesList = List(); bool animate = true; @override void initState() { // TODO: implement initState super.initState(); seriesList = _createSampleData(); } @override Widget build(BuildContext context) { return Scaffold( appBar: AppBar( title: Text('simple pie chart'), centerTitle: true, elevation: 0.0, ), body: charts.PieChart(seriesList, animate: animate), floatingActionButton: FloatingActionButton( child: Icon(Icons.refresh), onPressed: (){ setState(() { seriesList = _createRandomData(); }); }, ), ); } /// Create one series with sample hard coded data. List<charts.Series<LinearSales, int>> _createSampleData() { final data = [ LinearSales(0, 100), LinearSales(1, 0), ]; return [ charts.Series<LinearSales, int>( id: 'Sales', domainFn: (LinearSales sales, _) => sales.year, measureFn: (LinearSales sales, _) => sales.sales, data: data, ) ]; } List<charts.Series<LinearSales, int>> _createRandomData() { final random = Random(); final data = [ LinearSales(0, random.nextInt(100)), LinearSales(1, random.nextInt(100)), ]; return [ charts.Series<LinearSales, int>( id: 'Sales', domainFn: (LinearSales sales, _) => sales.year, measureFn: (LinearSales sales, _) => sales.sales, data: data, ) ]; } } /// Sample linear data type. class LinearSales { final int year; final int sales; LinearSales(this.year, this.sales); }
same problem!!!
Suppose my pie chart has two data A, B. When A occupies 100% and B is 0%, the pie chart does not display anything.
here is my code: