ComparisonChart
visualCompare categories using grouped, stacked, or mirrored chart layouts.
컴포넌트 의존 관계
깊이
100%
Grouped
Stacked
테스트 커버리지
2026년 7월 9일생성된 테스트 결과를 찾지 못했습니다.
ComparisonChart 항목이 문서 메타에 연결되어 있지만 현재 생성 파일에는 없습니다.
테스트를 추가한 뒤 `bun run generate:test-results`를 실행하거나 `testDescribe` 매핑을 다시 확인하세요.
ComparisonChart Props
| Prop | 타입 | 기본값 | 설명 |
|---|---|---|---|
data* | ChartDataPoint[] | — | 차트 데이터 배열 |
series* | ComparisonSeriesDef[] | — | 비교 시리즈 정의 |
xAxisKey | string | "name" | X축 데이터 키 |
layout | "grouped" | "stacked" | "mirrored" | "grouped" | 비교 레이아웃. mirrored는 두 번째 시리즈를 같은 기준선 아래로 그리고 눈금·툴팁은 부호 없이 읽힌다 |
barSize | number | — | 막대 두께 (px). 생략해도 24px를 넘지 않는다 |
radius | number | CHART_MARK.barRadius | 막대 데이터 끝의 모서리 반경 (px). 쌓인 막대는 맨 위 조각만 둥글린다 |
height | number | `${number}%` | 300 | 차트 높이 |
className | string | — | 루트 요소에 붙는 CSS 클래스 |
showGrid | boolean | true | 그리드 표시 여부. 실선 헤어라인 |
showTooltip | boolean | true | 툴팁 표시 여부 |
showLegend | boolean | — | 범례 표시 여부. 생략하면 시리즈가 둘 이상일 때만 보인다 |
showXAxis | boolean | true | X축 표시 여부 |
showYAxis | boolean | true | Y축 표시 여부 |
animate | boolean | true | false면 애니메이션을 끈다. 그 외에는 prefers-reduced-motion을 따른다 |
margin | ChartMargin | CHART_MARGIN | 차트 여백 (top/right/bottom/left) |
referenceLine | number | — | 기준선 Y값 |
referenceLabel | string | — | 기준선에 붙일 레이블 |
valueFormatter | (value: number) => string | — | 값 축 눈금 포맷터. 기본은 로케일 compact 숫자 |
categoryFormatter | (value: string | number) => string | — | 카테고리 축 눈금 포맷터 |
locale | string | — | 기본 숫자 포맷의 로케일. 생략하면 런타임 로케일 |
loading | boolean | false | 새 데이터를 기다리는 동안 현재 렌더를 흐리게 유지 |
accessibleTable | boolean | false | 스크린 리더용 숨김 데이터 표를 함께 렌더 |
emptyState | ReactNode | — | 데이터가 없을 때 보일 내용. 생략하면 labels.empty |
labels | ComparisonChartLabels | — | 사용자 노출 문자열 (empty, summaryCaption, categoryColumn, chartName). 기본은 영어 |
tooltipOptions | ChartTooltipContentProps | — | ChartTooltipContent에 그대로 넘길 옵션 |
legendOptions | ChartLegendOptions | — | ChartLegendContent에 그대로 넘길 옵션. inactiveKeys에 담긴 dataKey는 범례에서 흐려지고 차트에서도 그려지지 않는다 |
legendToggle | boolean | true | 범례 칩 클릭으로 시리즈를 켜고 끕니다. legendOptions.inactiveKeys를 주면 호출자가 상태를 소유하고, onClick만 주면 클릭을 전달받으면서 차트가 상태를 유지합니다. 마지막 남은 시리즈는 꺼지지 않습니다. false면 정적 범례 |
aria-label | string | — | 스크린 리더용 레이블. 생략하면 차트 종류와 시리즈 이름으로 만든다 |
aria-describedby | string | — | 차트를 설명하는 요소의 id |
Import
tsx
import { ComparisonChart } from "@reopt-ai/opt-ui";