Charts

Funnel Chart

Build funnel charts for conversion and drop-off visualization

Funnel charts display data as stacked trapezoids that narrow progressively, ideal for conversion funnels.

Simple Funnel Chart

A basic funnel chart with colored segments using <Cell>.

Funnel Chart with Labels

Place <LabelList> as a child inside <Funnel>. Labels fade in and out with their trapezoids.

Rectangle Last Shape

Set lastShapeType="rectangle" so the last segment keeps its width instead of narrowing to a point.

Reversed Funnel

Set :reversed="true" to flip the funnel — narrowest at the top, widest at the bottom.

Funnel Chart with Legend

Add <Legend> alongside <Funnel> to show a legend keyed by data names.

FunnelChart props

<FunnelChart> takes the common chart container props. It has no axes and no bar sizing.

Funnel props

PropTypeDefaultDescription
data-keyrow path or accessorrequiredField with the value
name-keyrow path or accessor'name'Field with the segment name
dataArraythe chart's dataRows for this series
last-shape-type'triangle' | 'rectangle''triangle'Shape of the last segment
reversedbooleanfalsePut the widest segment at the bottom
widthnumber | stringthe plot widthFunnel width
fillstringseries palette per segmentSegment fill; <Cell> sets one segment
strokestring'var(--v-charts-background, #fff)'Segment outline
namestring | number—Series name in the tooltip; the legend lists segment names
legend-typeLegendType'rect'Legend icon
tooltip-type'none'—Set 'none' to leave the series out of the tooltip
hidebooleanfalseHide the series
classstring—Class on the series layer
is-animation-activebooleanthe chart's valueAnimate this series
transitionChartTransitionthe chart's valueTiming and easing of data changes

Events: @click, @mouseenter, @mouseleave with (trapezoid, index, event), and @animation-start, @animation-end.

Slots

SlotPropsDescription
#shapeFunnelTrapezoidItem & { animationProgress }Custom trapezoid rendering. animationProgress goes from 0 to 1; use v-if="props.animationProgress >= 1" to show labels only after animation.
default—<Cell> for per-segment colors, <LabelList> for labels
Copyright © 2026