标签: google-barchart

如何使用 charts_flutter 库创建自定义 LegendContentBuilder 以根据选择显示和隐藏系列?

我使用charts_flutter创建BarChart,目前我想自定义它以构建如下图所示的 barChart:

在这里,我想做以下选项:

  1. 当我点击我在CustomLegend 中创建的图例时显示/隐藏系列(我在我的代码中用类名创建 -> CustomLegendBuilder
  2. 将自定义颜色设置为secondaryMeasureAxisprimaryMeasureAxis 的文本(我有左右两个轴)
  3. 点击该列时显示列的值(如气泡消息以显示该列的最大数据值)
  4. 当我隐藏系列之一时不要扩展列的宽度(我想为列设置特定的宽度)

请看我的代码:

pubspec.yaml :

dev_dependencies:
  flutter_test:
    sdk: flutter
  charts_flutter: ^0.9.0
Run Code Online (Sandbox Code Playgroud)

series_legend_options.dart :

import 'dart:math';

import 'package:charts_common/src/chart/common/behavior/legend/legend.dart';
import 'package:flutter/material.dart';
import 'package:charts_flutter/flutter.dart' as charts;

const Color blueColor = Color(0xff1565C0);
const Color orangeColor = Color(0xffFFA000);

class LegendOptions extends StatelessWidget {
  final List<charts.Series> seriesList;
  static const secondaryMeasureAxisId = 'secondaryMeasureAxisId';
  final bool animate;

  LegendOptions(this.seriesList, {this.animate});

  factory LegendOptions.withSampleData() {
    return LegendOptions(
      _createSampleData(),
      // Disable animations …
Run Code Online (Sandbox Code Playgroud)

charts legend flutter dynamic-chart-series google-barchart

9
推荐指数
1
解决办法
1658
查看次数