High Chart integration in FlutterFlow

Widgets & Design

Hi Team,

We are getting below error when trying to compile a custom widget that utilizes High Charts. The dependencies I'm using are 'high_chart: ^2.1.0' and 'js: ^0.7.1'.

"Error while running 'flutter pub get' while checking custom widgets and actions. Please try again, and if the problem persists, ensure that the dependencies in the 'pubspec.yaml' file are correctly configured."

Can you please check why we are getting this error even though we have added the correct dependencies and its correctly added to 'pubspec.yaml' file also?

Thanks.

What have you tried so far?
// Automatic FlutterFlow imports
import '/backend/supabase/supabase.dart';
import '/flutter_flow/flutter_flow_theme.dart';
import '/flutter_flow/flutter_flow_util.dart';
import '/custom_code/widgets/index.dart'; // Imports other custom widgets
import '/custom_code/actions/index.dart'; // Imports custom actions
import '/flutter_flow/custom_functions.dart'; // Imports custom functions
import 'package:flutter/material.dart';
// Begin custom widget code
// DO NOT REMOVE OR MODIFY THE CODE ABOVE!

import 'package:high_chart/high_chart.dart';

class RenewRxHighChartWidget extends StatefulWidget {
  const RenewRxHighChartWidget({
    super.key,
    this.width,
    this.height,
  });

  final double? width;
  final double? height;

  @override
  State<RenewRxHighChartWidget> createState() => _RenewRxHighChartWidgetState();
}

class _RenewRxHighChartWidgetState extends State<RenewRxHighChartWidget> {
  final String _chartData = '''{
      title: {
          text: 'Combination chart'
      },    
      xAxis: {
          categories: ['Apples', 'Oranges', 'Pears', 'Bananas', 'Plums']
      },
      labels: {
          items: [{
              html: 'Total fruit consumption',
              style: {
                  left: '50px',
                  top: '18px',
                  color: ( // theme
                      Highcharts.defaultOptions.title.style &&
                      Highcharts.defaultOptions.title.style.color
                  ) || 'black'
              }
          }]
      },
      series: [{
          type: 'column',
          name: 'Jane',
          data: [3, 2, 1, 3, 3]
      }, {
          type: 'column',
          name: 'John',
          data: [2, 4, 5, 7, 6]
      }, {
          type: 'column',
          name: 'Joe',
          data: [4, 3, 3, 5, 0]
      }, {
          type: 'spline',
          name: 'Average',
          data: [3, 2.67, 3, 6.33, 3.33],
          marker: {
              lineWidth: 2,
              lineColor: Highcharts.getOptions().colors[3],
              fillColor: 'white'
          }
      }, {
          type: 'pie',
          name: 'Total consumption',
          data: [{
              name: 'Jane',
              y: 13,
              color: Highcharts.getOptions().colors[0] // Jane's color
          }, {
              name: 'John',
              y: 23,
              color: Highcharts.getOptions().colors[1] // John's color
          }, {
              name: 'Joe',
              y: 19,
              color: Highcharts.getOptions().colors[2] // Joe's color
          }],
          center: [100, 80],
          size: 100,
          showInLegend: false,
          dataLabels: {
              enabled: false
          }
        }]
    }''';

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.teal,
      appBar: AppBar(
        centerTitle: true,
        title: const Text('High Charts Example App'),
      ),
      body: HighCharts(
        loader: const SizedBox(
          width: 200,
          child: LinearProgressIndicator(),
        ),
        size: const Size(400, 400),
        data: _chartData,
        scripts: const [
          "https://code.highcharts.com/highcharts.js",
          'https://code.highcharts.com/modules/networkgraph.js',
          'https://code.highcharts.com/modules/exporting.js',
        ],
      ),
    );
  }
}

I have written the above code after mentioning the required dependencies that HighChart needs to run itself on flutterflow. I checked pubspec.yaml also and it has the newly added dependencies.
I even tried to use old versions of highcharts but still nothing is working. If I remove this widget from compiling, then compilation works.
This code is working fine when we tried to run locally in a POC project based on flutter.

Did you check FlutterFlow's Documentation for this topic?
Yes