Lompat ke isi
CirccaHIG

Komponen / Grafik & jadwal

ProportionBar

Batang proporsi bagian dari satu keseluruhan: stacked tipis + legenda nominal & persen (beban per komponen), atau split tebal berlabel di dalam (gender).
React · BetaFigma · siapFigmaSumber

Import

tsx
import { ProportionBar, Card, formatMoney } from '@divistant/circca-react';

Props

Juga menerima atribut <div>. Batang & legenda aria-hidden; angka lengkap dibawa tabel data tersembunyi.
PropTipeDefaultKeterangan
dataChartDatum[]—Segmen berurutan { id?, label, value, tone?, valueLabel? }. tone bawaan mengikuti dataviz/cat-1…8.
variant'stacked' | 'split''stacked'stacked = batang tipis + legenda; split = batang tebal berlabel di dalam + persen di bawah.
labelstring—Nama grafik untuk pembaca layar (judul tabel data), mis. "Beban per komponen".
totalReactNode—Angka besar di atas batang (stacked), mis. formatMoney(27_136_338).
totalCaptionReactNode—Keterangan di samping total, Footnote fg/muted: "total beban perusahaan periode ini".
formatValue(value: number) => stringformatNumberFormat nilai di legenda, label split, dan tabel data.
showLegendbooleanstacked: true · split: falseTampilkan legenda titik + label + "nilai · persen".
legendLayout'inline' | 'list' | 'grid''grid'Tata letak legenda (ChartLegend).
minLabelSharenumber0.15Split: segmen di bawah porsi ini memindahkan labelnya ke bawah batang agar tidak terpotong.
tableColumns[ReactNode, ReactNode, ReactNode]['Bagian', 'Nilai', 'Persen']Kepala kolom tabel data pembaca layar.
emptyMessageReactNode'Belum ada data.'Pesan bila semua nilai nol.
classNamestring—Kelas tambahan (digabung aman dengan tailwind-merge).

Sumber

Kode komponen ada di packages/react/src/components/proportion-bar. Gaya hanya memakai kelas token Circca HIG — tidak ada warna, spasi, atau radius mentah.

Esc
↑↓ pilih↵ buka12 hasil