LineChartWidget class
A modern line chart widget with gradient fills and smooth animations.
This widget displays one or more data series as connected lines with optional area fills, points, and interactive tooltips.
Features
- Multiple data series support
- Smooth animations
- Gradient area fills
- Interactive point tapping
- Loading and error states
- Full theme support
Example
LineChartWidget(
dataSets: [
ChartDataSet(
color: Colors.blue,
label: 'January',
dataPoint: ChartDataPoint(x: 1, y: 20),
),
ChartDataSet(
color: Colors.red,
label: 'February',
dataPoint: ChartDataPoint(x: 2, y: 30),
),
],
theme: ChartTheme.light(),
title: 'Sales Trend',
onPointTap: (point, datasetIndex, pointIndex) {
print('Tapped: ${point.y}');
},
)
See also:
- BarChartWidget for bar charts
- AreaChartWidget for area charts
- Inheritance
-
- Object
- DiagnosticableTree
- Widget
- StatefulWidget
- LineChartWidget
Constructors
-
LineChartWidget({Key? key, required List<
ChartDataSet> dataSets, double lineWidth = 3.0, bool showArea = true, bool showPoints = true, bool showGrid = true, bool showAxis = true, bool showLabel = true, String? title, String? subtitle, Widget? header, ChartPointCallback? onPointTap, ChartPointHoverCallback? onPointHover, ChartTapCallback? onChartTap, bool isLoading = false, bool isError = false, double? height, EdgeInsets? padding, EdgeInsets? margin, ChartsConfig? config, int? xAxisLabelRotation, int? yAxisLabelRotation}) -
Creates a line chart widget.
const
Properties
- config → ChartsConfig?
-
final
-
dataSets
→ List<
ChartDataSet> -
final
-
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- header → Widget?
-
final
- height → double?
-
final
- isError → bool
-
final
- isLoading → bool
-
final
- key → Key?
-
Controls how one widget replaces another widget in the tree.
finalinherited
- lineWidth → double
-
final
- margin → EdgeInsets?
-
final
- onChartTap → ChartTapCallback?
-
final
- onPointHover → ChartPointHoverCallback?
-
final
- onPointTap → ChartPointCallback?
-
final
- padding → EdgeInsets?
-
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- showArea → bool
-
final
- showAxis → bool
-
final
- showGrid → bool
-
final
- showLabel → bool
-
final
- showPoints → bool
-
final
- subtitle → String?
-
final
- title → String?
-
final
- xAxisLabelRotation → int?
-
final
- yAxisLabelRotation → int?
-
final
Methods
-
createElement(
) → StatefulElement -
Creates a StatefulElement to manage this widget's location in the tree.
inherited
-
createState(
) → State< LineChartWidget> -
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.
inherited
-
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent 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 -
A string representation of this object.
inherited
-
toStringDeep(
{String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → 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.
inherited