Expokit
AboutDocsComponentsChartsBlocksPricing
Sign inGet started
All chartsUsage & configPatterns & effectsShow / hide anythingChart themingInteractions

Cartesian

Area ChartBar ChartLine ChartCombo ChartPrice ChartNewPill Bar ChartNewStacked Pill ChartNewRange Bar ChartNewDiverging Bar ChartNew

Circular

Pie & DonutRadial ChartRadar ChartPolar AreaPro

Dashboard

Stat CardNewGoal BarsNewBar ListNewSegmented BarNewTick Bar ChartNewWaffle ChartNewBead ChartNewCalendar HeatmapNew

Gauges & Progress

GaugeScore GaugeNewActivity RingsNewFan GaugeNewTick RingNewLiquid GaugeNewMini RingNew

3D & Pixel

3D DonutNewCylinder Bar ChartNewIsometric BarsProPixel BarsPro

Specialty

TreemapProWaterfallProBulletProTimelineProCandlestickHeatmapFunnel

Classic

SparklineProgress RingsMultiLine (classic)StackedBar (classic)Ranking Bars (classic)
Pill Bar Chart
Sponsor ExpoKit

Free stays free. Tip once — keep shipping.

Support
About
Docs
IntroductionWhat ExpoKit is and how it worksInstallationAdd ExpoKit to an Expo appThemingColours, radius and dark modeCLIinit, add, login and updateAI assistants (MCP)Cursor, Claude, Antigravity and moreRun on your phoneTry components in Expo GoChangelogWhat shipped recently
npx @expokit/cli@latest initQuick start
Components
Liquid Glass8 iOS 26 glass pieces3DNew14 tilt, flip and stack
Inputs 11
  • CalendarNew
  • Date PickerNew
  • Floating Input
  • OTP Input
  • Password Input
  • +6 more
Selection 6
  • Checkbox
  • Chip Group
  • Radio Group
  • RatingPro
  • Segmented Control
  • +1 more
Buttons 6
  • Button
  • Floating Action ButtonPro
  • Morphing Button GroupPro
  • QR Code ButtonPro
  • Slide to ConfirmPro
  • +1 more
Feedback 5
  • Alert
  • Progress
  • Skeleton
  • Spinner
  • Toast
Overlays 4
  • Action SheetNew
  • Bottom Sheet
  • Dialog
  • DrawerNew
Display 9
  • Accordion
  • Avatar
  • Badge
  • Card
  • CarouselPro
  • +4 more
Navigation 3
  • Bottom NavNew
  • Progress StepsNew
  • Tabs
Motion 3
  • Number TickerPro
  • Orb RevealPro
  • Text Animation
68 components · 329 live variantsAll components
Charts

Cartesian

  • Area Chart
  • Bar Chart
  • Line Chart
  • Combo Chart
  • Price ChartNew
  • Pill Bar ChartNew
  • Stacked Pill ChartNew
  • Range Bar ChartNew
  • Diverging Bar ChartNew

Circular

  • Pie & Donut
  • Radial Chart
  • Radar Chart
  • Polar AreaPro

Dashboard

  • Stat CardNew
  • Goal BarsNew
  • Bar ListNew
  • Segmented BarNew
  • Tick Bar ChartNew
  • Waffle ChartNew
  • Bead ChartNew
  • Calendar HeatmapNew

Gauges & Progress

  • Gauge
  • Score GaugeNew
  • Activity RingsNew
  • Fan GaugeNew
  • Tick RingNew
  • Liquid GaugeNew
  • Mini RingNew

3D & Pixel

  • 3D DonutNew
  • Cylinder Bar ChartNew
  • Isometric BarsPro
  • Pixel BarsPro

Specialty

  • TreemapPro
  • WaterfallPro
  • BulletPro
  • TimelinePro
  • Candlestick
  • Heatmap
  • Funnel

Classic

  • Sparkline
  • Progress Rings
  • MultiLine (classic)
  • StackedBar (classic)
  • Ranking Bars (classic)

Guides

  • Usage & config
  • Patterns & effects
  • Show / hide anything
  • Chart theming
  • Interactions
44 charts, built on the open-source expo-charts engineAll charts
Blocks

Screens

ChatProAn AI assistant chat screenCheckoutProA premium checkoutDashboardProA finance / analytics home screenDonut ShopProA dessert shop screen where the products rollInboxProA messaging inboxOnboardingProA minimal swipeable welcome flowProfileProAccount profile for any appSearch ResultsProA clean, monochrome search screenSettingsProAn iOS-style grouped settings screenSign InProOne configurable sign-in flow modelled on top mobile apps

App templates

  • AI assistant appPro
  • Business banking appPro
  • Food ordering appPro
10 complete screens — drop one in, wire your dataSee them on devices All templates All blocks
Pricing
DocsCartesianPill Bar Chart

Pill Bar Chart

Steps, activity and energy cards: capsule bars, a gradient or solid selected bar, a value bubble that glides between bars, badges, goal tracks and faded future days. Bars move and fade on the native UI thread, so they stay smooth on iOS and Android even while your app is busy.

<PillBarChart />4 variantsNew in 2.0.1

Live — the real React Native component rendered with react-native-web. Tap, drag and scrub it.

Installation#

terminal
npx expo install expo-charts react-native-svg

Usage#

Import the component and pass your data. Width defaults to the parent, so it adapts to phones, tablets and rotation.

PillBarChart.tsx
import { PillBarChart } from "expo-charts"; const steps = [  { label: "12", value: 2140 },  { label: "13", value: 2960 },  { label: "14", value: 2710, badge: "-8%" },  { label: "15", value: 3240 },  { label: "16", value: 3680 },]; <PillBarChart  data={steps}  height={120}  activeGradient={["#C3E550", "#4C9A3B"]}  defaultIndex={4}  dimAfter={4}  activeDot  onSelect={(i, d) => setShown(d)}/>

Props#

PropTypeDefault
data

One bar each. `badge` draws a bubble on the bar top ("+12%").

{ label, value, badge?, color? }[]—
height

Bar area height (labels and bubble add to it).

number180
max

Value of a full-height bar (100 for goals).

numberlargest value
color / activeColor

Bar colour and selected bar colour.

stringtheme / color
activeGradient

Gradient for the selected bar.

[top, bottom]—
track / trackColor

Full-height capsule behind each bar (progress to goal).

boolean / stringfalse / muted
inactiveOpacity

Other bars while one is selected.

number0.32
dimAfter

Bars after this index fade (days still to come).

number—
gap / barWidth / radius

Spacing and shape.

number8 / column / capsule
showLabels / showTooltip / activeDot

Labels under bars, value bubble, dot on the selected bar.

booleantrue / true / false
selectedIndex / defaultIndex

Controlled or initial selection.

number | null— / null
onSelect

Tap or drag across bars (haptics via ChartProvider).

(index, datum) => void—
formatValue

Bubble and screen-reader text.

(v, datum) => stringcompact
onScrubStart / onScrubEnd

Pause your ScrollView while dragging.

() => void—
PreviousPrice ChartNextStacked Pill Chart

Did you like the content?