Bar Chart
Bar charts are ideal for visualizing categorical data and comparing multiple series side by side. They can be stacked, oriented horizontally, or customized with legends and axes.
Usage
Copy the following helper functions into your Reflex application.
import reflex as rx tooltip = { "is_animation_active": False, "separator": "", "cursor": False, "item_style": { "color": "currentColor", "display": "flex", "paddingBottom": "0px", "justifyContent": "space-between", "textTransform": "capitalize", }, "label_style": { "color": rx.color("slate", 10), "fontWeight": "500", }, "content_style": { "background": rx.color_mode_cond("oklch(0.97 0.00 0)", "oklch(0.14 0.00 286)"), "borderColor": rx.color("slate", 5), "borderRadius": "5px", "fontFamily": "IBM Plex Mono,ui-monospace,monospace", "fontSize": "0.875rem", "lineHeight": "1.25rem", "fontWeight": "500", "letterSpacing": "-0.01rem", "minWidth": "8rem", "width": "175px", "padding": "0.375rem 0.625rem ", "position": "relative", }, } def info(title: str, size: str, subtitle: str, align: str): return rx.vstack( rx.heading(title, size=size, weight="bold"), rx.text(subtitle, size="1", color=rx.color("slate", 11), weight="medium"), spacing="1", align=align, ) def get_tooltip(): """Standard tooltip for all charts.""" return rx.recharts.graphing_tooltip(**tooltip) def get_cartesian_grid(): """Standard cartesian grid for charts.""" return rx.recharts.cartesian_grid( horizontal=True, vertical=False, class_name="opacity-25" ) def get_x_axis(data_key: str): """Standard X axis configuration.""" return rx.recharts.x_axis( data_key=data_key, axis_line=False, tick_size=10, tick_line=False, custom_attrs={"fontSize": "12px"}, interval="preserveStartEnd", )
Examples
Below are examples demonstrating how these components and charts can be used.
Multiple Series
A simple vertical bar chart comparing data categories.
Bar Chart - Multiple
Showing total visitors for the last 6 months
Trending up by 5.2% this month
January - June 2024
Horizontal
Display multiple datasets within the same chart for comparison.
Bar Chart - Horizontal
Showing total visitors for the last 6 months
Trending up by 5.2% this month
January - June 2024
Stacked with Legends
Combine related values by stacking bars for cumulative insights.
Bar Chart - Legend
Showing total visitors for the last 6 months
Trending up by 5.2% this month
January - June 2024
Labeled
Flip the orientation to show bars horizontally for improved readability.
Bar Chart - Labeled
Showing total visitors for the last 6 months
Trending up by 5.2% this month
January - June 2024
Dynamic
Demonstrate dynamic updates or data-driven interactivity in your bar chart.
Bar Chart - Dynamic
Showing total visitors for the last 6 months
Trending up by 5.2% this month
January - June 2024
Active
Add a built-in legend for clarity when displaying multiple series.
Bar Chart - Active
Showing total visitors for the last 6 months
Trending up by 5.2% this month
January - June 2024
Mixed Horizontal
Create a fully custom legend layout using Reflex components.
Bar Chart - Mixed
Showing total visitors for the last 6 months
Trending up by 5.2% this month
January - June 2024
Custom Tabs
Customize and format your x and y axes for improved presentation.
Online Transactions
Custom Legends
Show how the chart adapts across different screen sizes and layouts.
Desktop
Mobile
Tablet
Alternating Colors
Apply gradient fills to your bars for a modern, polished look.