ComponentsP3 본문

FunnelChart

전환/파이프라인 단계별 감소를 사다리꼴 밴드로 — 단계 폭 ∝ 도달 수, 첫·직전 단계 대비 전환율.

마지막 업데이트 2026-06-21

한눈에#

FunnelChart전환·파이프라인 단계의 감소를 위에서 아래로 좁아지는 사다리꼴 밴드로 보여줍니다. 각 단계의 폭은 도달 수에 비례하고, 값은 밴드 안에 크게, 단계마다 직전 대비 전환율을 함께 표기합니다 — 최대 이탈 구간을 강조하고 마지막 단계는 성공 그린으로 마무리해, 어느 단계에서 이탈이 큰지 한눈에 드러납니다.

구매 전환 퍼널 데이터 표
단계첫 단계 대비직전 대비
방문12,400100%
상품 조회7,20058.1%58.1%
장바구니3,10025%43.1%
결제 시작1,45011.7%46.8%
구매 완료9207.4%63.4%
방문 대비 최종 구매 전환 7.4%
구매 전환 퍼널

어떻게 동작하나#

사다리꼴 레이아웃은 순수 코어 computeFunnel이 계산합니다(ADR-018, Flutter wiz_charts 포팅 단위).

  • 폭 = 값 / 최대값 — 가장 큰 단계가 풀 폭, 나머지는 비례 축소(중앙 정렬).
  • 연속 실루엣 — 각 단계 사다리꼴의 하단 폭이 다음 단계 값을 따라가 깔때기처럼 매끄럽게 이어집니다(마지막 단계는 평평).
  • 모던 뎁스 — 단일 블루 톤 그라데이션(위 밝음 → 아래 짙음)과 부드러운 그림자로 "떠 있는 트레이" 입체감. 값은 넓은 밴드 안에 흰 글자로 크게, 좁은 단계는 좌측 레일로 폴백. 색은 장식이고 이탈 크기는 폭·전환율이 전달합니다.
  • 의미 신호 둘최대 이탈 구간을 amber로 강조하고, 마지막 단계는 성공 그린으로 마무리(단, 마지막이 최대 이탈이면 그린을 보류해 충돌 회피). 라이트·다크 모두 또렷합니다.

사용#

const stages = [
  { label: '방문', value: 12400 },
  { label: '상품 조회', value: 7200 },
  { label: '장바구니', value: 3100 },
  { label: '구매 완료', value: 920 },
];

<FunnelChart stages={stages} label="구매 전환 퍼널" />;

width(기본 360)·stageHeight(기본 56)로 크기를 조정합니다. 단계는 위에서 아래로 내림차순이 일반적이지만 강제하지 않습니다.

접근성#

면적 비교는 어려우므로(SC 1.4.1), 단계×값×전환율 표가 정본입니다 — sr-only <table>로 노출하고 SVG는 aria-hidden입니다. 표에는 값, 첫 단계 대비 전환율, 직전 단계 대비 전환율을 담습니다.

토큰#

역할
밴드단일 블루 톤 --wds-blue-500--wds-blue-700 그라데이션 · 마지막 --wds-green-600--wds-green-700 (원시 램프=다크 고정)
밴드 안 값--wds-white · --wds-font-size-title-l (흰 글자, large bold)
단계명·값·전환율 라벨--wds-color-text · --wds-color-text-muted · --wds-font-size-body-2
최대 이탈 강조--wds-color-warning-text (amber, 다크 리바인딩 안전)
단계 간 간격2px (SVG geometry 상수 — user-space, 토큰 미적용)