Cartesian chart methods

Methods in tooltipBehavior

Show method in tooltipBehavior

The show method is used to activate the tooltip at the specified location.

  • dart
  • SfCartesianChart chart;
        TooltipBehavior tooltip;
    
        @override
        Widget build(BuildContext context) {
    
        final List<ChartData> chartData = [
            ChartData(10, 17),
            ChartData(20, 34),
            // Add the required data
        ];
        
        tooltip = TooltipBehavior (enable: true);
    
        chart = SfCartesianChart(
          tooltipBehavior: tooltip,
            series: <CartesianSeries>[
              ColumnSeries<ChartData, double>(
                enableTooltip: true,
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y)
          ]
        );
    
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Show'),
                  onPressed: show
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void show() {
            tooltip.show(121,164);
          }
    
        void hide(){
            tooltip.hide();
        }

    showByIndex method in tooltipBehavior

    The showByIndex method is used to Displays the tooltip at the specified series and point index.

    The below mentioned arguments are given to the showByIndex method:

    seriesIndex - index of the series for which the pointIndex is specified.

    pointIndex - index of the point for which the tooltip should be shown.

  • dart
  • SfCartesianChart chart;
        TooltipBehavior tooltip;
    
        @override
        Widget build(BuildContext context) {
    
        final List<ChartData> chartData = [
            ChartData(10, 17),
            ChartData(20, 34),
            // Add the required data
        ];
        
        tooltip = TooltipBehavior (enable: true);
    
        chart = SfCartesianChart(
          tooltipBehavior: tooltip,
            series: <CartesianSeries>[
              ColumnSeries<ChartData, double>(
                enableTooltip: true,
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y)
          ]
        );
    
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Show'),
                  onPressed:(){
                       tooltip.showByIndex(0,1);
                  }
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void hide(){
            tooltip.hide();
        }

    showByPixel method in tooltipBehavior

    The showByPixel method is used to Displays the tooltip at the specified x and y-positions.

    x & y - logical pixel values to position the tooltip.

  • dart
  • SfCartesianChart chart;
        TooltipBehavior tooltip;
    
        @override
        Widget build(BuildContext context) {
    
        final List<ChartData> chartData = [
            ChartData(10, 17),
            ChartData(20, 34),
            // Add the required data
        ];
        
        tooltip = TooltipBehavior (enable: true);
    
        chart = SfCartesianChart(
          tooltipBehavior: tooltip,
            series: <CartesianSeries>[
              ColumnSeries<ChartData, double>(
                enableTooltip: true,
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y)
          ]
        );
    
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Show'),
                  onPressed:(){
                    tooltip.showByPixel(230.0,470.0);
                  }
                ),
                Container(child: chart)
              ]
            )
          )
        );
       }
    
        void hide(){
            tooltip.hide();
        }

    Hide method in tooltipBehavior

    The hide method is used to hide the displaying tooltip programmatically.

  • dart
  • SfCartesianChart chart;
        TooltipBehavior tooltip;
    
        @override
        Widget build(BuildContext context) {
        final List<ChartData> chartData = [
            ChartData(10, 17),
            ChartData(20, 34)
        // Add the required data  
        ];
        
        tooltip = TooltipBehavior (enable: true);
    
        chart = SfCartesianChart(
          tooltipBehavior: tooltip,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
                enableTooltip: true,
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y)
            ]
        );
    
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Hide'),
                  onPressed: hide
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void hide(){
            tooltip.hide();
        }

    Methods in trackballBehavior

    Show method in trackballBehavior

    The show method is used to activate the trackball at the specified location.

  • dart
  • SfCartesianChart chart;
        TrackballBehavior trackball;
      
        @override
        Widget build(BuildContext context) {
        
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34)
          // Add the required data
        ];
        
        trackball = TrackballBehavior(enable: true);
        
        chart = SfCartesianChart(
          trackballBehavior: trackball,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
                enableTooltip: true,
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y)
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Show'),
                  onPressed:() {
            trackball.show(121, 164);
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }

    showByIndex method in trackballBehavior

    The showByIndex method is used to activate the trackball at the specified point index.

    pointIndex - index of the point for which the trackball must be shown.

  • dart
  • SfCartesianChart chart;
        TrackballBehavior trackball;
      
        @override
        Widget build(BuildContext context) {
        
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34)
          // Add the required data
        ];
        
        trackball = TrackballBehavior(enable: true);
        
        chart = SfCartesianChart(
          trackballBehavior: trackball,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
                enableTooltip: true,
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y)
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Show'),
                  onPressed: (){
            trackball.showByIndex(3);
        },
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }

    Hide method in trackballBehavior

    The hide method is used to hide the displaying trackball programmatically.

  • dart
  • SfCartesianChart chart;
        TrackballBehavior trackball;
      
        @override
        Widget build(BuildContext context) {
        
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34),
          // Add the required data
        ];
        
        trackball = TrackballBehavior(enable: true);
        
        chart = SfCartesianChart(
          trackballBehavior: trackball,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
                enableTooltip: true,
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y)
          ],
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Hide'),
                  onPressed: hide
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void hide() {
            trackball.hide();
        }

    Methods in crosshairBehavior

    Show method in crosshairBehavior

    The show method is used to activate the crosshair at the specified location.

  • dart
  • SfCartesianChart chart;
        CrosshairBehavior crosshair;
        
        @override
        Widget build(BuildContext context) {
         // Add the required data 
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34),
        ];
    
        crosshair = CrosshairBehavior(enable: true);
        
        chart = SfCartesianChart(
          crosshairBehavior: crosshair,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
                enableTooltip: true,
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y
              )
           ]
         );
    
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Show'),
                  onPressed: ()
                  {
                    crosshair.show(121, 164);
                  }
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }

    showByIndex method in crosshairBehavior

    The showByIndex method is used to activate the crosshair at the specified point index.

    pointIndex - index of point at which the crosshair needs to be shown.

  • dart
  • SfCartesianChart chart;
        CrosshairBehavior crosshair;
        
        @override
        Widget build(BuildContext context) {
         // Add the required data 
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34),
        ];
    
        crosshair = CrosshairBehavior(enable: true);
        
        chart = SfCartesianChart(
          crosshairBehavior: crosshair,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
                enableTooltip: true,
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y
              )
           ]
         );
    
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Show'),
                  onPressed: ()
                  {
                     crosshair.showByIndex(2);
                  }
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }

    Hide method in crosshairBehavior

    The hide method is used to hide the displaying crosshair programmatically.

  • dart
  • SfCartesianChart chart;
        CrosshairBehavior crosshair;
      
        @override
        Widget build(BuildContext context) {  
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34)
        // Add the required data  
        ];
        
        crosshair = CrosshairBehavior(enable: true);
        
        chart = SfCartesianChart(
          crosshairBehavior: crosshair,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
                enableTooltip: true,
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y)
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Hide'),
                  onPressed: hide
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void hide() {
            crosshair.hide();
        }

    Methods in selectionSettings

    SelectionIndex method in selectionSettings

    The selectionIndex method is used to select the data point programmatically. The required arguments are listed below.

    • pointIndex - specifies the point index value.
    • seriesIndex - specifies the series index value.
    • selectionType - specifies the SelectionType and this is an optional parameter.
    • multiSelect - bool property specifies the multiple selection and this is an optional parameter.
  • dart
  • SfCartesianChart chart;
        SelectionSettings selection;
    
        @override
        Widget build(BuildContext context) {
        
        final List<ChartData> chartData = [
          hartData(10, 17),
          ChartData(20, 34)
          // Add the required data
        ];
    
        selection = SelectionSettings(enable: true);
        
        chart = SfCartesianChart(
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
                dataSource: chartData,
                xValueMapper: (ChartData data, _) => data.x,
                yValueMapper: (ChartData data, _) => data.y,
                selectionSettings: selection
            )
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Select'),
                  onPressed: select
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void select() {
            selection.selectionIndex(1, 0);
        }

    Methods in zoomPanBehavior

    ZoomIn method in zoomPanBehavior

    The zoomIn method is used to increases the magnification of the plot area.

  • dart
  • SfCartesianChart chart;
        ZoomPanBehavior zooming;
    
        @override
        Widget build(BuildContext context) {
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34)
          //add the required data
        ];
        
        zooming = ZoomPanBehavior(
          enableSelectionZooming: true,
          enableDoubleTapZooming: true,
          enablePinching: true,
          enablePanning: true
        );
        
        chart = SfCartesianChart(
          zoomPanBehavior: zooming,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
              dataSource: chartData,
              xValueMapper: (ChartData data, _) => data.x,
              yValueMapper: (ChartData data, _) => data.y
            )
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Zoom'),
                  onPressed: zoom
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void zoom() {
            zooming.zoomIn();
        }

    ZoomOut method in zoomPanBehavior

    The zoomOut method is used to decreases the magnification of the plot area.

  • dart
  • SfCartesianChart chart;
        ZoomPanBehavior zooming;
    
        @override
        Widget build(BuildContext context) {
        
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34)
          //add the required data
        ];
        
        zooming = ZoomPanBehavior(
            enableSelectionZooming: true,
            enableDoubleTapZooming: true,
            enablePinching: true,
            enablePanning: true
        );
        
        chart = SfCartesianChart(
          zoomPanBehavior: zooming,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
              dataSource: chartData,
              xValueMapper: (ChartData data, _) => data.x,
              yValueMapper: (ChartData data, _) => data.y
            )
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Zoom'),
                  onPressed: zoom
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void zoom() {
            zooming.zoomOut();
        }

    zoomByFactor method in zoomPanBehavior

    The zoomByFactor method changes the zoom level using zoom factor. Here, you can pass the zoom factor of an axis to magnify the plot area. The value ranges from 0 to 1.

  • dart
  • SfCartesianChart chart;
        ZoomPanBehavior zooming;
    
        @override
        Widget build(BuildContext context) {
        
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34),
          //add the required data
        ];
        
        zooming = ZoomPanBehavior(
            enableSelectionZooming: true,
            enableDoubleTapZooming: true,
            enablePinching: true,
            enablePanning: true
        );
        
        chart = SfCartesianChart(
          zoomPanBehavior: zooming,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
              dataSource: chartData,
              xValueMapper: (ChartData data, _) => data.x,
              yValueMapper: (ChartData data, _) => data.y
            )
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Zoom'),
                  onPressed: zoom
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void zoom() {
            zooming.zoomByFactor(0.5);
        }

    ZoomByRect method in zoomPanBehavior

    The zoomByRect method zooms the chart for a given rectangle value. Here, you can pass the rectangle with the left, right, top, and bottom values, using which the selection zooming will be performed.

  • dart
  • SfCartesianChart chart;
        ZoomPanBehavior zooming;
    
        @override
        Widget build(BuildContext context) {
        
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34),
          //add the required data
        ];
        
        zooming = ZoomPanBehavior(
            enableSelectionZooming: true,
            enableDoubleTapZooming: true,
            enablePinching: true,
            enablePanning: true);
        
        chart = SfCartesianChart(
          zoomPanBehavior: zooming,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
              dataSource: chartData,
              xValueMapper: (ChartData data, _) => data.x,
              yValueMapper: (ChartData data, _) => data.y
            )
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Zoom'),
                  onPressed: zoom
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void zoom() {
            zooming.zoomByRect(const Rect.fromLTRB(200, 300, 300, 400));
        }

    ZoomToSingleAxis method in zoomPanBehavior

    The zoomToSingleAxis method changes the zoom level of an appropriate axis. Here, you need to pass axis, zoom factor, zoom position of the zoom level that needs to be modified.

  • dart
  • SfCartesianChart chart;
        ZoomPanBehavior zooming;
        NumericAxis xAxis;
    
        @override
        Widget build(BuildContext context) {
        
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34),
          //add required data
        ];
        zooming = ZoomPanBehavior(
          enableSelectionZooming: true,
          enableDoubleTapZooming: true,
          enablePinching: true,
          enablePanning: true
        );
    
        xAxis = NumericAxis();
        chart = SfCartesianChart(
          zoomPanBehavior: zooming,
          primaryXAxis: xAxis,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
              dataSource: chartData,
              xValueMapper: (ChartData data, _) => data.x,
              yValueMapper: (ChartData data, _) => data.y
            )
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Zoom'),
                  onPressed: zoom
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void zoom() {
            final double zoomPosition = 0.5;
            final double zoomFactor = 0.4;
            zooming.zoomToSingleAxis(xAxis,zoomPosition,zoomFactor);
        }

    PanToDirection method in zoomPanBehavior

    The panToDirection method pans the plot area for given left, right, top, and bottom directions. To perform this action, the plot area needs to be in zoomed state.

  • dart
  • SfCartesianChart chart;
        ZoomPanBehavior zooming;
        NumericAxis xAxis;
    
        @override
        Widget build(BuildContext context) {
        
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34),
          //add required data
        ];
        zooming = ZoomPanBehavior(
            enableSelectionZooming: true,
            enableDoubleTapZooming: true,
            enablePinching: true,
            enablePanning: true
        );
    
        xAxis = NumericAxis();
        chart = SfCartesianChart(
          zoomPanBehavior: zooming,
          primaryXAxis: xAxis,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
              dataSource: chartData,
              xValueMapper: (ChartData data, _) => data.x,
              yValueMapper: (ChartData data, _) => data.y
            )
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Pan'),
                  onPressed: pan
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void pan() {
            //In similar way, specify other directions like bottom, left and right
            zooming.panToDirection('top'); 
        }

    Reset method in zoomPanBehavior

    The reset method returns the plot area back to its original position after zooming..

  • dart
  • SfCartesianChart chart;
        ZoomPanBehavior zooming;
    
        @override
        Widget build(BuildContext context) {
        
        final List<ChartData> chartData = [
          ChartData(10, 17),
          ChartData(20, 34)
          //add the required data
        ];
        
        zooming = ZoomPanBehavior(
          enableSelectionZooming: true,
          enableDoubleTapZooming: true,
          enablePinching: true,
          enablePanning: true
        );
        
        chart = SfCartesianChart(
          zoomPanBehavior: zooming,
          series: <CartesianSeries>[
            ColumnSeries<ChartData, double>(
              dataSource: chartData,
              xValueMapper: (ChartData data, _) => data.x,
              yValueMapper: (ChartData data, _) => data.y
            )
          ]
        );
        
        return Scaffold(
          body: Center(
            child: Column(
              children: <Widget>[
                FlatButton(
                  child: Text('Zoom'),
                  onPressed: zoom
                ),
                Container(child: chart)
              ]
            )
          )
        );
      }
    
        void zoom() {
          zooming.reset();
           }