BarChart class

A vertical bar chart (histogram) widget.

Each value is rendered as a column whose height is proportional to its magnitude within the width×height area.

BarChart(
  values: [5, 12, 8, 20, 15],
  width: 40,
  height: 10,
  showAxis: true,
  barStyle: UvStyle(fg: UvColor.rgb(100, 200, 50)),
)
Inheritance

Constructors

BarChart({required List<double> values, int? width, int? height, UvStyle? barStyle, UvStyle? axisStyle, UvStyle? gridStyle, UvStyle? labelStyle, bool showAxis = true, bool showGrid = false, int gridRows = 3, int gridCols = 0, List<String>? xLabels, List<String>? yLabels, List<ChartLegendEntry>? legendEntries, int legendColumns = 1, int legendRowGap = 0, ChartLegendPosition legendPosition = ChartLegendPosition.topRight, int legendPadding = 1, String barChar = '█', int barGap = 1, int? crosshairX, int? crosshairY, UvStyle? crosshairStyle, Key? key})
Creates a BarChart with the given data and display options.

Properties

axisStyle UvStyle?
Style for the bottom axis line.
final
barChar String
Character used to fill bar columns.
final
barGap int
Number of empty columns between adjacent bars.
final
barStyle UvStyle?
Style for the bar fill characters.
final
children List<Widget>
Child widgets that receive forwarded messages.
no setterinherited
crosshairStyle UvStyle?
Style for the crosshair lines.
final
crosshairX int?
X coordinate for crosshair overlay, or null to hide.
final
crosshairY int?
Y coordinate for crosshair overlay, or null to hide.
final
debugRenderObjectPassthrough bool
Whether this widget is intentionally transparent to render-object layouts.
no setterinherited
focusable bool
Whether this widget can receive keyboard focus.
no setterinherited
gridCols int
Number of vertical grid lines.
final
gridRows int
Number of horizontal grid lines.
final
gridStyle UvStyle?
Style for grid lines.
final
hashCode int
The hash code for this object.
no setterinherited
height int?
The chart height in terminal rows, or null to fill available space.
final
id String
Unique identifier for this widget.
no setterinherited
key Key?
Key for preserving widget identity.
finalinherited
labelStyle UvStyle?
Style for axis labels.
final
legendColumns int
Number of legend columns.
final
legendEntries List<ChartLegendEntry>?
Optional legend entries rendered inside chart bounds.
final
legendPadding int
Inner padding from chart edges to legend area.
final
legendPosition ChartLegendPosition
Legend placement within chart bounds.
final
legendRowGap int
Empty rows inserted between legend rows.
final
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
showAxis bool
Whether to draw a horizontal axis at the bottom.
final
showGrid bool
Whether to draw background grid lines.
final
theme Theme
Access the current theme.
no setterinherited
values List<double>
The data values to render as bars.
final
width int?
The chart width in terminal columns, or null to fill available space.
final
xLabels List<String>?
Labels along the bottom (X) axis.
final
yLabels List<String>?
Labels along the left (Y) axis.
final

Methods

buildCachedView<T>(T builder(), Object? cacheKey) → T
Returns a cached view if the cache key matches.
inherited
createRenderObject() RenderObject
override
didUnmountRenderObject(RenderObject renderObject) → void
inherited
handleInit() Cmd?
Override this instead of init for widget-specific initialization.
inherited
handleIntercept(Msg msg) → (Widget, Cmd?)
Override this to handle messages before they reach children.
inherited
handleUpdate(Msg msg) → (Widget, Cmd?)
Override this to handle messages specific to this widget.
inherited
init() Cmd?
Called once when the widget is first mounted.
inherited
invalidateCachedView() → void
Clears any cached view for this widget.
inherited
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toString() String
A string representation of this object.
inherited
update(Msg msg) → (Model, Cmd?)
Handles messages by forwarding to children then calling handleUpdate.
inherited
updateRenderObject(RenderObject renderObject) → void
override
view() Object
Renders the widget to a string or View.
override

Operators

operator ==(Object other) bool
The equality operator.
inherited