Bar Chart

PreviousNext

Interactive bar chart visualization with tooltips, legends, and multiple data series support.

Bar chart visualization built on Recharts with configurable axes, tooltips, legends, and multiple visual variants.

Basic Usage

User Analytics
Simple bar chart showing desktop and mobile users

Bar Chart with Axis

Add X-axis labels to your chart for better context.

Monthly Traffic
Bar chart with X-axis labels

Interactive Tooltips

Enable tooltips to show detailed information on hover.

Interactive Chart
Hover over bars to see values

Variants

Choose from four visual styles: card, outline, ghost, or minimal.

Card Variant
Outline Variant
Ghost Variant
Minimal Variant

Multiple Data Series

Display multiple data series in a single chart.

Financial Overview
Quarterly financial performance

All features enabled for a comprehensive visualization.

Comprehensive Analytics
Complete example with all features enabled

API Reference

ChartItem Props

PropTypeDefaultDescription
dataRecord<string, unknown>[]-Required. Array of data points to visualize
configChartConfig-Required. Configuration object mapping data keys to labels and colors
dataKeysstring[]-Specific data keys to display (defaults to all keys in config)
xAxisKeystring"name"Data key to use for X-axis labels
showGridbooleantrueShow/hide cartesian grid
showXAxisbooleantrueShow/hide X-axis
showYAxisbooleanfalseShow/hide Y-axis
showLegendbooleanfalseShow/hide legend
showTooltipbooleantrueShow/hide tooltip on hover
titlestring-Chart title
descriptionstring-Chart description
variant"card" | "outline" | "ghost" | "minimal""card"Visual style variant
size"sm" | "md" | "lg""md"Size preset
heightnumber | string-Custom height override
aspectRatio"video" | "square" | "auto""video"Aspect ratio preset
onClick() => void-Click handler for interactive charts
ariaLabelstring-Custom accessibility label
classNamestring-Additional CSS classes
classNamesobject-CSS classes for specific elements

ChartCollection Props

PropTypeDefaultDescription
itemsChartItemProps[]-Required. Array of chart configurations
layout"stack" | "grid""stack"Layout mode
columns1 | 2 | 31Number of columns (grid layout only)
gap"sm" | "md" | "lg""md"Spacing between charts
variant"card" | "outline" | "ghost" | "minimal""card"Default variant for all items
size"sm" | "md" | "lg""md"Default size for all items
onItemClick(item, index) => void-Click handler receiving item and index
classNamestring-Additional CSS classes

ChartConfig Type

type ChartConfig = {
  [key: string]: {
    label?: React.ReactNode;
    icon?: React.ComponentType;
    color?: string;
    theme?: Record<string, string>;
  };
};