Bileşenler
Chart
Çizgi, alan, çubuk, yığılmış çubuk ve halka grafikleri ile küçük eğilim çizgisi; her grafikte özet ve veri tablosu vardır.
- Storybook
- Storybook
- Kaynak kod
- Kaynak kod
Kurulum
Bölüm başlığı “Kurulum”- Paket
@bigbang/ui- İçe aktarma
import { Chart } from '@bigbang/ui';- Kaynak
- Chart.tsx
- Storybook
- Chart · Playground
Chart, @bigbang/ui paketindedir ve ECharts 6’yı kullanır (paketle birlikte gelir). Kurulum ve stil dosyaları Button ile aynıdır; ayrıntılar için Button kod sekmesine bakın.
import { Chart } from '@bigbang/ui';
<Chart kind="line" title="Aylık değerler" series={[ { id: 'first', label: 'Birinci seri', data: [ { x: 'Ocak', y: 12 }, { x: 'Şubat', y: 18 }, ], }, ]}/>;Özellikler
Bölüm başlığı “Özellikler”kind- Açıklama
- Verinin nasıl çizileceği.
lineveareasıralı bir eksendeki değişimi,barkategorilerin karşılaştırmasını,stacked-barbir bütünün parçalarını,donuttek serinin paylarını gösterir (en fazla 5 parça). - Tür
ChartKind- Varsayılan
'line'
titleZorunlu- Açıklama
- Grafiği adlandırır. Görünen başlık (
figcaption), tablo başlığı ve erişilebilir adın başıdır. - Tür
string
titleHidden- Açıklama
- Başlığı görsel olarak gizler, ekran okuyucu için bırakır. Başlığı sayfada zaten olan grafikler için.
- Tür
boolean- Varsayılan
false
description- Açıklama
- Grafiğin ne gösterdiğini anlatan bir iki cümle.
aria-describedbyile bağlanır. - Tür
string
seriesZorunlu- Açıklama
- Veri. Her serinin kararlı bir
id'si, birlabel'ı ve{ x, y }noktaları vardır.donutyalnızca ilk seriyi çizer. - Tür
ChartSeries[]
formatValue- Açıklama
- Eksenlerde, ipuçlarında, özette ve tabloda değerleri biçimlendirir. Varsayılan: Provider dilinde
Intl.NumberFormat. - Tür
(value: number) => string
formatCategory- Açıklama
- Ay ya da tarih gibi kategori etiketlerini biçimlendirir. Varsayılan: değerin metni.
- Tür
(category: string | number) => string
height- Açıklama
- Çizim yüksekliği: 160, 240 ya da 320 px.
- Tür
'sm' | 'md' | 'lg'- Varsayılan
'md'
legend- Açıklama
- Göstergeyi açar. Birden çok seri ve halka grafikte varsayılan olarak açıktır.
- Tür
boolean
loading- Açıklama
- Grafik yerine yer tutucu blok gösterir ve şekli
aria-busyyapar. - Tür
boolean- Varsayılan
false
emptyLabel- Açıklama
- Veri yokken gösterilen metin. Varsayılan: "Bu dönem için veri yok" ya da "No data for this period".
- Tür
string
hideValues- Açıklama
- Gizlilik modu: eksen değerleri kalkar; ipuçları, özet ve tablo
••••gösterir. - Tür
boolean- Varsayılan
false
table- Açıklama
- Çizimi kullanamayanlar için veri tablosu.
togglegrafiği tabloyla değiştiren bir düğme ekler,visibleikisini birlikte gösterir,hiddentabloyu çıkarır (veriyi başka yolla sunun). - Tür
'toggle' | 'visible' | 'hidden'- Varsayılan
'toggle'
className- Açıklama
- Yalnızca yerleşim için: dış boşluk, genişlik, ızgara yerleşimi.
- Tür
string
Parçalar ve veri
Bölüm başlığı “Parçalar ve veri”| Parça | Öğe | Özellikler |
|---|---|---|
Chart.Sparkline |
<div> |
data (number[]), label, tone (neutral, positive, negative, brand), className. Yükseklik chart-sparkline-height token’ıdır. |
Seri biçimi: { id: string; label: string; data: { x: string | number; y: number }[] }. id kararlı olmalıdır: aynı id ile gelen yeni veri yerinde güncellenir ve giriş hareketi yeniden oynamaz.
Veri öznitelikleri
Bölüm başlığı “Veri öznitelikleri”data-component="chart",data-kind: şekilde. Küçük eğilim çizgisidata-component="sparkline"vedata-tonetaşır.data-part:plot,table,empty.
Biçimlendirme
Bölüm başlığı “Biçimlendirme”formatValue verilmezse sayılar Provider diliyle Intl.NumberFormat ile biçimlenir (Türkçede 1.234,5). Para birimi, yüzde ya da birim için kendi biçimlendiricinizi verin.
<Chart title="Aylık değerler" series={series} formatValue={(value) => new Intl.NumberFormat('tr-TR', { style: 'percent' }).format(value / 100)} formatCategory={(month) => String(month).slice(0, 3)}/>İçerik güvenlik politikası (CSP)
Bölüm başlığı “İçerik güvenlik politikası (CSP)”Grafikler SVG ile çizilir; ECharts SVG öğelerine satır içi style öznitelikleri yazar. Bu yüzden grafik kullanan sayfalarda style-src-attr 'unsafe-inline' gerekir. unsafe-eval gerekmez, ağ isteği yapılmaz ve yazı tipi ya da görsel indirilmez.
Chart yalnızca şu ECharts modüllerini içe aktarır; paketleyici gerisini ayıklar:
echarts/coreecharts/charts:LineChart,BarChart,PieChartecharts/components:GridComponent,TooltipComponent,LegendComponent,AriaComponent,DatasetComponentecharts/renderers:SVGRenderer
Tüm echarts paketini içe aktarmayın.
Sunucu tarafı çizim
Bölüm başlığı “Sunucu tarafı çizim”Sunucuda şekil, başlık, özet ve tablo çizilir; ECharts yalnızca tarayıcıda, bileşen bağlandıktan sonra başlar. Renkler çalışma anında okunur; marka ya da mod (data-theme, data-brand) değişince grafik yeniden çizilir.