SfCartesianChart class

Renders the cartesian type charts.

Cartesian charts are generally charts with horizontal and vertical axes.SfCartesianChart provides options to cusomize chart types using the series property.

Widget build(BuildContext context) {
 return Center(
   child:SfCartesianChart(
     title: ChartTitle(text: 'Flutter Chart'),
    legend: Legend(isVisible: true),
    series: getDefaultData(),
    tooltipBehavior: TooltipBehavior(enable: true),
   )
);
}
static List<LineSeries<SalesData, num>> getDefaultData() {
   final List<SalesData> chartData = <SalesData>[
     SalesData(DateTime(2005, 0, 1), 'India', 1.5, 21, 28, 680, 760),
     SalesData(DateTime(2006, 0, 1), 'China', 2.2, 24, 44, 550, 880),
     SalesData(DateTime(2007, 0, 1), 'USA', 3.32, 36, 48, 440, 788),
     SalesData(DateTime(2008, 0, 1), 'Japan', 4.56, 38, 50, 350, 560),
     SalesData(DateTime(2009, 0, 1), 'Russia', 5.87, 54, 66, 444, 566),
     SalesData(DateTime(2010, 0, 1), 'France', 6.8, 57, 78, 780, 650),
    SalesData(DateTime(2011, 0, 1), 'Germany', 8.5, 70, 84, 450, 800)
   ];
  return <LineSeries<SalesData, num>>[
     LineSeries<SalesData, num>(
         enableToolTip: isTooltipVisible,
         dataSource: chartData,
         xValueMapper: (SalesData sales, _) => sales.numeric,
         yValueMapper: (SalesData sales, _) => sales.sales1,
         width: lineWidth ?? 2,
         enableAnimation: false,
        markerSettings: MarkerSettings(
             isVisible: isMarkerVisible,
             height: markerWidth ?? 4,
             width: markerHeight ?? 4,
             shape: DataMarkerType.Circle,
             borderWidth: 3,
             borderColor: Colors.red),
         dataLabelSettings: DataLabelSettings(
             visible: isDataLabelVisible, position: ChartDataLabelAlignment.Auto)),
     LineSeries<SalesData, num>(
         enableToolTip: isTooltipVisible,
         dataSource: chartData,
         enableAnimation: false,
         width: lineWidth ?? 2,
         xValueMapper: (SalesData sales, _) => sales.numeric,
         yValueMapper: (SalesData sales, _) => sales.sales2,
         markerSettings: MarkerSettings(
             isVisible: isMarkerVisible,
             height: markerWidth ?? 4,
             width: markerHeight ?? 4,
             shape: DataMarkerType.Circle,
             borderWidth: 3,
             borderColor: Colors.black),
         dataLabelSettings: DataLabelSettings(
             isVisible: isDataLabelVisible, position: ChartDataLabelAlignment.Auto))
   ];
 }
Inheritance

Constructors

SfCartesianChart({Key key, Color backgroundColor, bool enableSideBySideSeriesPlacement: true, Color borderColor: Colors.transparent, double borderWidth: 0, Color plotAreaBackgroundColor, Color plotAreaBorderColor, double plotAreaBorderWidth: 0.7, ImageProvider<Object> plotAreaBackgroundImage, ChartTooltipCallback onTooltipRender, ChartActualRangeChangedCallback onActualRangeChanged, ChartAxisLabelRenderCallback onAxisLabelRender, ChartDataLabelRenderCallback onDataLabelRender, ChartLegendRenderCallback onLegendItemRender, ChartTrackballCallback onTrackballPositionChanging, ChartCrosshairCallback onCrosshairPositionChanging, ChartZoomingCallback onZooming, ChartZoomingCallback onZoomStart, ChartZoomingCallback onZoomEnd, ChartZoomingCallback onZoomReset, ChartPointTapCallback onPointTapped, ChartAxisLabelTapCallback onAxisLabelTapped, DataLabelTapCallback onDataLabelTapped, ChartTrendlineRenderCallback onTrendlineRender, ChartLegendTapCallback onLegendTapped, ChartSelectionCallback onSelectionChanged, ChartTouchInteractionCallback onChartTouchInteractionUp, ChartTouchInteractionCallback onChartTouchInteractionDown, ChartTouchInteractionCallback onChartTouchInteractionMove, ChartIndicatorRenderCallback onIndicatorRender, ChartMarkerRenderCallback onMarkerRender, bool isTransposed: false, bool enableAxisAnimation: false, List<CartesianChartAnnotation> annotations, List<Color> palette: const <Color>[Color.fromRGBO(75, 135, 185, 1), Color.fromRGBO(192, 108, 132, 1), Color.fromRGBO(246, 114, 128, 1), Color.fromRGBO(248, 177, 149, 1), Color.fromRGBO(116, 180, 155, 1), Color.fromRGBO(0, 168, 181, 1), Color.fromRGBO(73, 76, 162, 1), Color.fromRGBO(255, 205, 96, 1), Color.fromRGBO(255, 240, 219, 1), Color.fromRGBO(238, 238, 238, 1)], ChartAxis primaryXAxis, ChartAxis primaryYAxis, EdgeInsets margin, TooltipBehavior tooltipBehavior, ZoomPanBehavior zoomPanBehavior, Legend legend, SelectionType selectionType, ActivationMode selectionGesture, bool enableMultiSelection, CrosshairBehavior crosshairBehavior, TrackballBehavior trackballBehavior, dynamic series, ChartTitle title, List<ChartAxis> axes, List<TechnicalIndicators> indicators})
Creating an argument constructor of SfCartesianChart class.

Properties

annotations List<CartesianChartAnnotation>
Customizes the annotations. Annotations are used to mark the specific area of interest in the plot area with texts, shapes, or images. [...]
final
axes List<ChartAxis>
Customizes the additional axes in the chart. [...]
final
backgroundColor Color
Background color of the chart. [...]
final
borderColor Color
Color of the chart border. [...]
final
borderWidth double
Width of the chart border. [...]
final
crosshairBehavior CrosshairBehavior
Customizes the crosshair in chart. [...]
final
enableAxisAnimation bool
Axis elements animation on visible range change. [...]
final
enableMultiSelection bool
Enables or disables the multiple data points or series selection. [...]
final
enableSideBySideSeriesPlacement bool
Enables or disables the placing of series side by side. [...]
final
hashCode int
The hash code for this object. [...]
@nonVirtual, read-only, inherited
indicators List<TechnicalIndicators>
Technical indicators for charts.
final
isTransposed bool
Data points or series can be selected while performing interaction on the chart. It can also be selected at the initial rendering using this property. [...]
final
key Key
Controls how one widget replaces another widget in the tree. [...]
final, inherited
legend Legend
Customizes the legend in the chart. [...]
final
margin EdgeInsets
Margin for chart. [...]
final
onActualRangeChanged ChartActualRangeChangedCallback
Occurs when the visible range of an axis is changed, i.e. value changes for minimum, maximum, and interval. Here, you can get the actual and visible range of an axis. [...]
final
onAxisLabelRender ChartAxisLabelRenderCallback
Occurs while rendering the axis labels. Text and text styles such as color, font size, and font weight can be customized. [...]
final
onAxisLabelTapped ChartAxisLabelTapCallback
Occurs when tapping the axis label. Here, you can get the appropriate axis that is tapped and the axis label text. [...]
final
onChartTouchInteractionDown ChartTouchInteractionCallback
Occurs when touched on the chart area. [...]
final
onChartTouchInteractionMove ChartTouchInteractionCallback
Occurs when touched and moved on the chart area. [...]
final
onChartTouchInteractionUp ChartTouchInteractionCallback
Occurs when tapped on the chart area. [...]
final
onCrosshairPositionChanging ChartCrosshairCallback
Occurs when tapping the axis label. Here, you can get the appropriate axis that is tapped and the axis label text. [...]
final
onDataLabelRender ChartDataLabelRenderCallback
Occurs when tapping the axis label. Here, you can get the appropriate axis that is tapped and the axis label text. [...]
final
onDataLabelTapped DataLabelTapCallback
Called when the data label is tapped. [...]
final
onIndicatorRender ChartIndicatorRenderCallback
Occurs when the indicator is rendered. Here, you can get the indicatorname,, seriesname, indicator index, and width of indicators. [...]
final
onLegendItemRender ChartLegendRenderCallback
Occurs when the legend item is rendered. Here, you can get the legend’s text, shape, series index, and point index of circular series. [...]
final
onLegendTapped ChartLegendTapCallback
Occurs when the legend item is rendered. Here, you can get the legend’s text, shape, series index, and point index of circular series. [...]
final
onMarkerRender ChartMarkerRenderCallback
Occurs when the marker is rendered. Here, you can get the marker pointIndex shape, height and width of data markers. [...]
final
onPointTapped ChartPointTapCallback
Occurs when tapping the series point. Here, you can get the series, series index and point index. [...]
final
onSelectionChanged ChartSelectionCallback
Occurs while selection changes. Here, you can get the series, selected color, unselected color, selected border color, unselected border color, selected border width, unselected border width, series index, and point index. [...]
final
onTooltipRender ChartTooltipCallback
Occurs while tooltip is rendered. You can customize the position and header. Here, you can get the text, header, point index, series, x and y-positions. [...]
final
onTrackballPositionChanging ChartTrackballCallback
Occurs while the trackball position is changed. Here, you can customize the text of the trackball. [...]
final
onTrendlineRender ChartTrendlineRenderCallback
Occurs when the trendline is rendered. Here, you can get the legend’s text, shape, series index, and point index of circular series. [...]
final
onZoomEnd ChartZoomingCallback
Occurs when the zooming action is completed. Here, you can get the axis, current zoom factor, current zoom position, previous zoom factor, and previous zoom position. [...]
final
onZooming ChartZoomingCallback
Occurs when Zoooming event is performed. Here, you can get the axis, current zoom factor, current zoom position, previous zoom factor, and previous zoom position. [...]
final
onZoomReset ChartZoomingCallback
Occurs when zoomed state is reset. Here, you can get the axis, current zoom factor, current zoom position, previous zoom factor, and previous zoom position. [...]
final
onZoomStart ChartZoomingCallback
Occurs when zooming action begins. You can customize the zoom factor and zoom position of an axis. Here, you can get the axis, current zoom factor, current zoom position, previous zoom factor, and previous zoom position. [...]
final
palette List<Color>
Color palette for chart series. If the series color is not specified, then the series will be rendered with appropriate palette color. Ten colors are available by default. [...]
final
plotAreaBackgroundColor Color
Background color of the plot area. [...]
final
plotAreaBackgroundImage ImageProvider<Object>
Background image for chart. [...]
final
plotAreaBorderColor Color
Border color of the plot area. [...]
final
plotAreaBorderWidth double
Border width of the plot area. [...]
final
primaryXAxis ChartAxis
Customizes the primary x-axis in chart. [...]
final
primaryYAxis ChartAxis
Customizes the primary y-axis in chart. [...]
final
runtimeType Type
A representation of the runtime type of the object.
read-only, inherited
selectionGesture ActivationMode
Gesture for activating the selection. Selection can be activated in tap, double tap, and long press. [...]
final
selectionType SelectionType
Mode of selecting the data points or series. [...]
final
series List<ChartSeries>
Customizes the series in chart. [...]
final
title ChartTitle
Customizes the chart title [...]
final
tooltipBehavior TooltipBehavior
Customizes the tooltip in chart. [...]
final
trackballBehavior TrackballBehavior
Customizes the trackball in chart. [...]
final
zoomPanBehavior ZoomPanBehavior
Customizes the zooming and panning settings. [...]
final

Methods

createElement() StatefulElement
Creates a StatefulElement to manage this widget's location in the tree. [...]
inherited
createState() State<StatefulWidget>
Creates the mutable state for this widget at a given location in the tree. [...]
override
debugDescribeChildren() List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children. [...]
@protected, inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node. [...]
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a non-existent method or property is accessed. [...]
inherited
toDiagnosticsNode({String name, DiagnosticsTreeStyle style}) DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep. [...]
inherited
toString({DiagnosticLevel minLevel: DiagnosticLevel.info}) String
Returns a string representation of this object.
inherited
toStringDeep({String prefixLineOne: '', String prefixOtherLines, DiagnosticLevel minLevel: DiagnosticLevel.debug}) String
Returns a string representation of this node and its descendants. [...]
inherited
toStringShallow({String joiner: ', ', DiagnosticLevel minLevel: DiagnosticLevel.debug}) String
Returns a one-line detailed description of the object. [...]
inherited
toStringShort() String
A short, textual description of this widget.
inherited

Operators

operator ==(Object other) bool
The equality operator. [...]
@nonVirtual, inherited