API
API
PivotValueFieldOptions

PivotValueFieldOptions extends PivotFieldOptions

κ°’(values) 좕에 λ°°μΉ˜ν•˜λŠ” 집계(measure) ν•„λ“œ μ˜΅μ…˜.

Options

name: string (opens in a new tab)

ν•„λ“œλͺ….
ν”Όλ²—ν…Œμ΄λΈ”μ˜ row/column dimension λ˜λŠ” value ν•„λ“œλ‘œ μ‚¬μš©λ˜λŠ” λ°μ΄ν„°νλΈŒ 컬럼λͺ…을 λ°˜λ“œμ‹œ μ§€μ •ν•œλ‹€. [주의] 생성 μ‹œ ν•„μˆ˜μ΄λ©°, 생성 ν›„μ—λŠ” λ³€κ²½ν•  수 μ—†λ‹€.

default: undefined

width: number (opens in a new tab)

ν•„λ“œ ν‘œμ‹œ λ„ˆλΉ„ (px).
μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ ν…Œμ΄λΈ” 섀정에 따라 κΈ°λ³Έ λ„ˆλΉ„λ‚˜ κ³„μ‚°λœ λ„ˆλΉ„λ‘œ ν‘œμ‹œλœλ‹€. 컬럼 헀더에 ν‘œμ‹œλ˜λŠ” 경우 컬럼 ν—€λ”μ˜ λ§ˆμ§€λ§‰ level ν•„λ“œμΌ λ•Œλ§Œ μ μš©λœλ‹€. 즉, measureκ°€ ν‘œμ‹œλ˜λ©΄ μƒμœ„ dimension ν•„λ“œμ—λŠ” μ μš©λ˜μ§€ μ•ŠλŠ”λ‹€.

default: undefined

headerWidth: number (opens in a new tab)

행에 ν‘œμ‹œλ  λ•Œ λ„ˆλΉ„.
μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ ν–‰ ν—€λ”μ˜ κΈ°λ³Έ μ„€μ • λ„ˆλΉ„λ‚˜ κ³„μ‚°λœ λ„ˆλΉ„λ‘œ ν‘œμ‹œλœλ‹€.

default: undefined

measure: string (opens in a new tab)

[주의] 졜초 생성 ν›„ λ³€κ²½ν•  수 μ—†λ‹€.

default: undefined

aggregate: 'var' | 'first' | 'last' | 'sum' | 'avg' | 'min' | 'max' | 'count' | 'distinct' | 'product' | 'stdev' | 'stdevp' | 'varp' | 'p25' | 'p50' | 'p75'

κ°’ ν•„λ“œμ˜ 집계 ν•¨μˆ˜ μœ ν˜•.
μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ 'sum'으둜 μ§‘κ³„ν•œλ‹€.

default: undefined

dataBar: PivotDataBarOptions

μ…€ κ°’ 크기에 λΉ„λ‘€ν•˜λŠ” λ§‰λŒ€λ₯Ό μ…€ 배경에 ν‘œμ‹œν•˜λŠ” μ˜΅μ…˜.
PivotDataBarOptions μ°Έμ‘°.

default: undefined

heatmap: PivotHeatmapOptions

μ…€ 값에 따라 색상을 λ‹¬λ¦¬ν•˜λŠ” 히트맡 μ˜΅μ…˜.
PivotHeatmapOptions μ°Έμ‘°.

default: undefined

highlight: PivotHighlightOptions

νŠΉμ • 쑰건에 따라 셀을 κ°•μ‘° ν‘œμ‹œν•˜λŠ” μ˜΅μ…˜.
예λ₯Ό λ“€μ–΄, 값이 νŠΉμ • μž„κ³„κ°’μ„ μ΄ˆκ³Όν•˜λŠ” 경우 μ…€ 배경색을 λΉ¨κ°„μƒ‰μœΌλ‘œ ν‘œμ‹œν•˜λŠ” λ“±μ˜ 쑰건뢀 μ„œμ‹ κΈ°λŠ₯을 μ œκ³΅ν•œλ‹€.

default: undefined

icon: PivotIconOverlayOptions

μ…€ κ°’ λ²”μœ„μ— 따라 μžλ™ Nλ“±λΆ„λœ μ•„μ΄μ½˜μ„ ν‘œμ‹œν•˜λŠ” overlay. 동일 셀에 dataBarκ°€ ν™œμ„±ν™”λ˜μ–΄ 있으면 dataBarκ°€ μš°μ„ μ΄λ©° icon은 λ¬΄μ‹œλœλ‹€.

default: undefined

className: string (opens in a new tab)

κ°’ ν•„λ“œμ˜ λͺ¨λ“  셀에 μ μš©ν•  CSS 클래슀 이름. λ°μ΄ν„°λ°”λ‚˜ 히트맡 λ“± μ…€ μ˜€λ²„λ ˆμ΄ μŠ€νƒ€μΌκ³ΌλŠ” λ³„λ„λ‘œ, μ…€μ˜ ν…μŠ€νŠΈ μŠ€νƒ€μΌ 등을 μ‘°μ •ν•˜κΈ° μœ„ν•΄ μ‚¬μš©ν•  수 μžˆλ‹€. [주의] 데이터바와 background-color λ“± μ…€ μŠ€νƒ€μΌμ„ λ™μ‹œμ— μ μš©ν•  λ•Œ, 클래슀 이름이 μ…€ μ˜€λ²„λ ˆμ΄ μŠ€νƒ€μΌλ³΄λ‹€ μš°μ„  μ μš©λ˜λ―€λ‘œ μ˜λ„μΉ˜ μ•Šμ€ μŠ€νƒ€μΌ 좩돌이 λ°œμƒν•  수 μžˆλ‹€. 클래슀 이름을 μ‚¬μš©ν•  λ•ŒλŠ” μ…€ μ˜€λ²„λ ˆμ΄ μŠ€νƒ€μΌκ³Όμ˜ 쑰합에 μ£Όμ˜ν•΄μ•Ό ν•œλ‹€.

default: undefined

totalClass: string (opens in a new tab)

μ†Œκ³„ 셀에 μΆ”κ°€λ‘œ μ μš©ν•  CSS 클래슀 이름.
μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ className이 μ†Œκ³„ 셀에도 λ™μΌν•˜κ²Œ μ μš©λœλ‹€.

default: undefined

grandTotalClass: string (opens in a new tab)

총계 셀에 μΆ”κ°€λ‘œ μ μš©ν•  CSS 클래슀 이름.
μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ className이 총계 셀에도 λ™μΌν•˜κ²Œ μ μš©λœλ‹€.

default: undefined

numberFormat: string (opens in a new tab)

κ°’ ν•„λ“œμ˜ μžλ£Œν˜•μ΄ '[number](https://www.typescriptlang.org/docs/handbook/2/everyday-types.html#the-primitives-string-number-and-boolean)'일 λ•Œ 숫자 ν‘œμ‹œ ν˜•μ‹.
μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ ν”Όλ²—ν…Œμ΄λΈ”μ— μ„€μ •λœ κΈ°λ³Έ ν˜•μ‹μ„ μ‚¬μš©ν•œλ‹€.

default: undefined

dateFormat: string (opens in a new tab)

κ°’ ν•„λ“œμ˜ μžλ£Œν˜•μ΄ 'date'일 λ•Œ λ‚ μ§œ ν‘œμ‹œ ν˜•μ‹.
μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ ν”Όλ²—ν…Œμ΄λΈ”μ— μ„€μ •λœ κΈ°λ³Έ ν˜•μ‹μ„ μ‚¬μš©ν•œλ‹€.

default: undefined

textFormat: string (opens in a new tab)

κ°’ ν•„λ“œμ˜ μžλ£Œν˜•μ΄ 'text'일 λ•Œ ν…μŠ€νŠΈ ν‘œμ‹œ ν˜•μ‹.
μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ ν”Όλ²—ν…Œμ΄λΈ”μ— μ„€μ •λœ κΈ°λ³Έ ν˜•μ‹μ„ μ‚¬μš©ν•œλ‹€.

default: undefined

formatter: (cell: IPivotValueCellInfo, stats: ScopedStats) => string (opens in a new tab)|IPivotFormatResult

value ν•„λ“œμΈ 경우, 집계 κ°’ λŒ€μ‹  ν‘œμ‹œν•  λŒ€μ²΄ ν…μŠ€νŠΈ(λ˜λŠ” ν…μŠ€νŠΈ+μŠ€νƒ€μΌ)λ₯Ό λ°˜ν™˜ν•˜λŠ” 콜백.

λ°˜ν™˜κ°’:

  • null λ˜λŠ” undefined: 콜백 호좜이 λ¬΄μ‹œλ˜κ³  μ›λž˜ 집계 값이 ν‘œμ‹œλœλ‹€.
  • string: 셀에 ν‘œμ‹œν•  λŒ€μ²΄ ν…μŠ€νŠΈ. λ¬Έμžμ—΄μ— ${value} 토큰은 포맷된 μ…€ κ°’μœΌλ‘œ μΉ˜ν™˜λœλ‹€.
  • IPivotFormatResult: ν…μŠ€νŠΈμ™€ μŠ€νƒ€μΌμ„ ν•¨κ»˜ μ§€μ •ν•˜λŠ” 객체.

예: { text: 'β–² ${value}', color: 'red', bold: true, align: 'center' } β†’ 빨간색 ꡡ은 κΈ€μ”¨λ‘œ 'β–² 100' 쀑앙 μ •λ ¬ ν‘œμ‹œ. 예: { text: cell.value, className: 'highlight' } β†’ μ…€ κ°’ κ·ΈλŒ€λ‘œ ν‘œμ‹œν•˜λ˜, 클래슀 highlight 적용. 예: { text: cell.value, color: 'red', bold: true, align: 'center', backgroundColor: '#ffff00' } β†’ 빨간색 ꡡ은 κΈ€μ”¨λ‘œ 쀑앙 μ •λ ¬ ν‘œμ‹œ, 배경색은 λ…Έλž€μƒ‰.

콜백 λ‚΄λΆ€μ—μ„œ 뢄포 기반 ν‘œμ‹œ(자체 μ •κ·œν™”/μž„κ³„κ°’/λž­ν‚Ή λ“±)κ°€ ν•„μš”ν•˜λ©΄ formatterStatsλ₯Ό μ§€μ •ν•œλ‹€. μ§€μ •λœ μ˜΅μ…˜μœΌλ‘œ measure λ Œλ” μ‹œμž‘ μ‹œ 단 ν•œ 번 톡계λ₯Ό 계산해 stats 인자둜 μ „λ‹¬ν•˜λ―€λ‘œ, formatter ν˜ΈμΆœλ‹Ή μΆ”κ°€ λΉ„μš©μ΄ μ—†λ‹€. (μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ statsλŠ” undefined이고 톡계 계산도 μΌμ–΄λ‚˜μ§€ μ•ŠλŠ”λ‹€.)

예: ν–‰ λ‹¨μœ„ min~max μ •κ·œν™”λ‘œ λ°±λΆ„μœ¨ ν‘œμ‹œ

{
  formatterStats: { compareScope: 'row' },
  formatter: (cell, stats) => {
    const g = stats!.groups.get(stats!.groupKey(cell)) ?? stats!.all;
    const t = (cell.value - g.min) / (g.max - g.min);
    return `${(t * 100).toFixed(0)}%`;
  }
}

예: 전체 μƒμœ„ 10% μ…€λ§Œ ꡡ게 ν‘œμ‹œ

{
  formatterStats: { withSorted: true },
  formatter: (cell, stats) => {
    const sorted = stats!.all.sorted!; // λ‚΄λ¦Όμ°¨μˆœ
    const threshold = sorted[Math.floor(sorted.length * 0.1)];
    return cell.value >= threshold
      ? { text: cell.value, bold: true }
      : null;
  }
}

default: undefined

formatterStats: FormatterStatsOptions

formatter에 전달할 뢄포 ν†΅κ³„μ˜ 사전 계산 μ˜΅μ…˜.

μ§€μ •ν•˜λ©΄ measure λ Œλ” μ‹œμž‘ μ‹œ 1회만 톡계λ₯Ό μ‚°μΆœν•˜μ—¬ λͺ¨λ“  formatter ν˜ΈμΆœμ— 같은 μ°Έμ‘°λ₯Ό μ „λ‹¬ν•œλ‹€. μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄(undefined) 톡계 계산은 μΌμ–΄λ‚˜μ§€ μ•Šκ³  stats μΈμžλŠ” undefined.

formatterκ°€ μ„€μ •λ˜μ–΄ μžˆμ§€ μ•ŠμœΌλ©΄ 이 μ˜΅μ…˜μ€ λ¬΄μ‹œλœλ‹€.

heatmap/dataBar/iconOverlay/highlight λ“± λ‹€λ₯Έ overlayκ°€ 같은 measure에 있으면 톡계 계산 μžμ²΄κ°€ μΊμ‹œ κ³΅μœ λ˜λ―€λ‘œ μΆ”κ°€ λΉ„μš©λ„ μ—†λ‹€.

default: undefined

showAs: ValueShowAs | (cell: IPivotValueCellInfo) => any (opens in a new tab)

value ν•„λ“œμ˜ κ°’ ν‘œμ‹œ 방식.
집계 값을 κ·ΈλŒ€λ‘œ ν‘œμ‹œν•˜κ±°λ‚˜ λ°±λΆ„μœ¨, 차이, λˆ„μ , μˆœμœ„ λ“±μœΌλ‘œ λ³€ν™˜ν•˜μ—¬ ν‘œμ‹œν•œλ‹€. μ§€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ 'normal'둜 ν‘œμ‹œν•œλ‹€.

빌트인 ValueShowAs ν•­λͺ©μœΌλ‘œ ν‘œν˜„μ΄ μ–΄λ €μš΄ 경우 콜백 ν•¨μˆ˜λ₯Ό 직접 μ§€μ •ν•  수 μžˆλ‹€. μ½œλ°±μ€ raw 집계 값을 κ°€μ§„ cell을 λ°›μ•„ λ³€ν™˜λœ ν‘œμ‹œκ°’μ„ λ°˜ν™˜ν•œλ‹€. 콜백 λ‚΄λΆ€μ—μ„œ 빌트인 showAs와 μœ μ‚¬ν•œ 계산이 ν•„μš”ν•˜λ©΄ cell.field.model(= PivotValueFieldModel)에 λ…ΈμΆœλœ 헬퍼 API(rowTotal/colTotal/grandTotal/parentRowTotal/parentColTotal/ cellValue/siblingsAlong/indexOfSelf/baseValue)λ₯Ό μ‚¬μš©ν•  수 μžˆλ‹€.

default: undefined

baseField: string (opens in a new tab)

showAsκ°€ 'basePercent' | 'baseDiff' | 'basePercentDiff'일 λ•Œ 비ꡐ 기쀀이 λ˜λŠ” dimension ν•„λ“œλͺ….
μ§€μ •ν•œ ν•„λ“œ μΆ•μ—μ„œ baseItem으둜 μ§€μ •ν•œ ν•­λͺ©μ˜ μ…€ 값을 κΈ°μ€€κ°’μœΌλ‘œ μ‚¬μš©ν•œλ‹€.

default: undefined

baseItem: string (opens in a new tab) | number (opens in a new tab)

showAsκ°€ 'basePercent' | 'baseDiff' | 'basePercentDiff'일 λ•Œ 비ꡐ 기쀀이 λ˜λŠ” ν•­λͺ© κ°’ λ˜λŠ” μƒλŒ€ μœ„μΉ˜.

  • string | number: baseField μΆ•μ—μ„œ ν•΄λ‹Ή κ°’κ³Ό μΌμΉ˜ν•˜λŠ” ν•­λͺ©μ„ κΈ°μ€€μœΌλ‘œ μ‚¬μš©.
  • '@first' / '@last': μΆ•μ˜ 첫 번째 / λ§ˆμ§€λ§‰ ν•­λͺ©.
  • '@previous' / '@next': 직전 / 직후 ν•­λͺ©.

μƒλŒ€ μœ„μΉ˜ ν•­λͺ©μ€ ν˜„μž¬ 셀이 μ†ν•œ λΆ€λͺ¨ κ·Έλ£Ή μ•ˆμ—μ„œ μ°ΎλŠ”λ‹€(쀑첩 μΆ•μ—μ„œ κ·Έλ£Ή 경계λ₯Ό λ„˜μ§€ μ•ŠμŒ). @previous/@nextλŠ” ν•΄λ‹Ή λ°©ν–₯으둜 μ΄λ™ν•˜λ©° 쑰합이 μ‹€μ œλ‘œ μ‘΄μž¬ν•˜λŠ” κ°€μž₯ κ°€κΉŒμš΄ ν•­λͺ©μ„ κΈ°μ€€μœΌλ‘œ μ‚Όκ³ , μ‘°ν•© μžμ²΄κ°€ μ—†λŠ” ν•­λͺ©μ€ κ±΄λ„ˆλ›΄λ‹€. λ°©ν–₯으둜 μ‘΄μž¬ν•˜λŠ” 쑰합이 ν•˜λ‚˜λ„ μ—†μœΌλ©΄ κ²°κ³ΌλŠ” 빈 셀이닀. κΈ°μ€€ ν•­λͺ©(μ‘°ν•©)은 μ‘΄μž¬ν•˜λ‚˜ κ·Έ λ‹¨λ©΄μ—μ„œ κ°’λ§Œ λΉ„μ–΄ 있으면 기쀀값을 0으둜 κ°„μ£Όν•˜μ—¬, 'baseDiff'λŠ” ν˜„μž¬κ°’μ„, 'basePercent'/ 'basePercentDiff'λŠ” 0 λ‚˜λˆ—μ…ˆμœΌλ‘œ 빈 셀이 λœλ‹€.

default: undefined

baseAxis: ShowAsAxis

showAsκ°€ 'diff' | 'percentDiff' | 'running' | 'rank'일 λ•Œ 비ꡐ/λˆ„μ /μˆœμœ„ κ³„μ‚°μ˜ κΈ°μ€€ μΆ•.
Excel의 base field μΆ• κ°œλ…κ³Ό λ™μΌν•˜λ‹€. κΈ°μ€€ fieldκ°€ 놓인 좕을 가리킨닀.

  • 'row': κΈ°μ€€ fieldκ°€ ν–‰ μΆ• β†’ 행을 따라(μ„Έλ‘œ) μ΄λ™ν•˜λ©° 이웃 셀을 λΉ„κ΅ν•œλ‹€.
  • 'column': κΈ°μ€€ fieldκ°€ μ—΄ μΆ• β†’ 열을 따라(κ°€λ‘œ) μ΄λ™ν•˜λ©° 이웃 셀을 λΉ„κ΅ν•œλ‹€.

같은 λΆ€λͺ¨ κ·Έλ£Ή λ‚΄μ˜ 동일 measure μ…€λ“€λ§Œ ν˜•μ œλ‘œ κ°„μ£Όν•œλ‹€.

default: 'row'

style: PivotCellStyle

κ°’ ν•„λ“œμ˜ λͺ¨λ“  셀에 μ μš©ν•  μŠ€νƒ€μΌ.
className으둜 μ„€μ •λœ css 클래슀 μŠ€νƒ€μΌλ“€λ³΄λ‹€ μš°μ„ ν•œλ‹€.

default: undefined

totalStyle: PivotCellStyle

κ°’ ν•„λ“œμ˜ μ†Œκ³„ 셀에 μΆ”κ°€λ‘œ μ μš©ν•  μŠ€νƒ€μΌ.
totalClass으둜 μ„€μ •λœ css 클래슀 μŠ€νƒ€μΌλ“€λ³΄λ‹€ μš°μ„ ν•œλ‹€. 또, styles둜 μ„€μ •λœ μŠ€νƒ€μΌλ³΄λ‹€ μš°μ„ ν•œλ‹€.

default: undefined

grandStyle: PivotCellStyle

κ°’ ν•„λ“œμ˜ 총계 셀에 μΆ”κ°€λ‘œ μ μš©ν•  μŠ€νƒ€μΌ.
grandTotalClass으둜 μ„€μ •λœ css 클래슀 μŠ€νƒ€μΌλ“€λ³΄λ‹€ μš°μ„ ν•œλ‹€. 또, styles둜 μ„€μ •λœ μŠ€νƒ€μΌλ³΄λ‹€ μš°μ„ ν•œλ‹€.

default: undefined