Formatting - zziuni/d3 GitHub Wiki

Wiki β–Έ API Reference β–Έ Core β–Έ Formatting

μ’Œν‘œμΆ• 라벨에 μ§€μ €λΆ„ν•˜κ²Œ "0.30000000000000004"라고 ν‘œμ‹œλ  일을 보톡 κ³ λ €ν•˜μ§€ μ•ŠλŠ” μ΄μœ μ€‘ ν•˜λ‚˜λŠ” λ°”λ‘œ 숫자 ν¬λ§·νŒ…μ΄ 있기 λ•Œλ¬Έμ΄λ‹€. "$1,240.10" 처럼 가독성을 μœ„ν•΄μ„œ μ²œλ‹¨μœ„λ‘œ 끊고 자리수λ₯Ό κ³ μ •ν•˜κ±°λ‚˜ μ•„λ‹ˆλ©΄ νŠΉμ • 숫자의 유효 자리수만 좜λ ₯ν•˜κΈΈ 원할 μˆ˜λ„ μžˆλ‹€. D3λŠ” 이런 ν‘œμ€€ 숫자 ν¬λ§·νŒ… μ‚¬μš©μ„ μ‰½κ²Œ ν•΄μ€€λ‹€. 예λ₯Ό λ“€μ–΄, λ„€μžλ¦¬λ‘œ 0을 μ±„μš°λŠ” ν•¨μˆ˜λ₯Ό λ§Œλ“€λ €λ©΄ λ‹€μŒμ²˜λŸΌ ν•œλ‹€.

var zero = d3.format("04d");

이제 μ‰½κ²Œ ν¬λ§·νŒ…ν•  수 μžˆλ‹€.

zero(2); // "0002"
zero(123); // "0123"

숫자 말고도 D3λŠ” λ‚ μ§œμ™€ 콀마둜 κ΅¬λΆ„ν•œ κ°’(CSV)의 νŒŒμ‹±, ν¬λ§·νŒ…λ„ μ§€μ›ν•œλ‹€.

Numbers

# d3.format(specifier)

specifier λ₯Ό 포맷을 μ •μ˜ν•˜κΈ°μœ„ν•œ λ¬Έμžμ—΄λ‘œ μ‚¬μš©ν•˜λŠ” μ‹ κ·œ 포맷 ν•¨μˆ˜λ₯Ό λ°˜ν™˜ν•œλ‹€. 포맷 ν•¨μˆ˜λŠ” 인자둜 숫자λ₯Ό λ°›κ³  ν¬λ§·νŒ…λœ μˆ«μžν˜• λ¬Έμžμ—΄μ„ λ°˜ν™˜ν•œλ‹€. 포맷을 μœ„ν•œ λ¬Έμžμ—΄μ€ Python 3.1에 λ‚΄μž₯된 format specification mini-languageλ₯Ό λ³Έλ– μ„œ λ§Œλ“€μ—ˆλ‹€. μ •μ˜ λ¬Έμžμ—΄μ€ [sign][0][width][,][.precision][type] ν˜•νƒœλ₯Ό λˆλ‹€.

sign 은 λ‹€μŒμ€‘ ν•˜λ‚˜λ‹€.

  • plus ("+") - μŒμˆ˜μ™€ μ–‘μˆ˜μ—μ„œ +, - 기호λ₯Ό λͺ¨λ‘ ν‘œκΈ°ν•œλ‹€.
  • minus ("-") - μŒμˆ˜μ— λŒ€ν•΄μ„œλ§Œ - 기호λ₯Ό ν‘œκΈ°ν•œλ‹€. (κΈ°λ³Έκ°’)
  • space (" ") - μ–‘μˆ˜λŠ” 빈 곡백이 ν‘œκΈ°λ˜κ³  μŒμˆ˜λŠ” - 기호λ₯Ό ν‘œκΈ°ν•œλ‹€.

comma (",")λŠ” μ²œλ‹¨μœ„ ꡬ뢄을 μœ„ν•œ 콀마 μ‚¬μš©μš© μ˜΅μ…˜μ΄λ‹€.

width λŠ” μ΅œμ†Œ 자리수λ₯Ό μ •μ˜ν•œλ‹€. μ •μ˜ν•˜μ§€ μ•ŠμœΌλ©΄ μž…λ ₯κ°’μœΌλ‘œ μ •μ˜λœλ‹€. width κ°€ 0으둜 μ‹œμž‘ν•˜λ©΄ λͺ¨μžλž€ 자리수λ₯Ό 0으둜 μ±„μšΈ 수 μžˆλ‹€.

κ°€λŠ₯ν•œ type 값이닀.

  • exponent ("e") - Number.toExponentialλ₯Ό μ‚¬μš©ν•œλ‹€. (μ§€μˆ˜)
  • general ("g") - Number.toPrecisionλ₯Ό μ‚¬μš©ν•œλ‹€.
  • fixed ("f") - Number.toFixedλ₯Ό μ‚¬μš©ν•œλ‹€. (반올림)
  • integer ("d") - Number.toStringλ₯Ό μ‚¬μš©ν•œλ‹€. μ •μˆ˜κ°€ μ•„λ‹Œ 값은 λ¬΄μ‹œν•œλ‹€.
  • rounded ("r") - fixed와 λΉ„μŠ·ν•˜μ§€λ§Œ precision 둜 μ •μ˜ν•œ μžλ¦¬μˆ˜μ—μ„œ λ°˜μ˜¬λ¦Όν•œλ‹€.
  • percentage ("%") - fixed와 λΉ„μŠ·ν•˜μ§€λ§Œ "%"접미사λ₯Ό 뢙이고 100을 κ³±ν•œλ‹€.
  • rounded percentage ("p") - rounded와 λΉ„μŠ·ν•˜μ§€λ§Œ, "%"접미사λ₯Ό 뢙이고 100을 κ³±ν•œλ‹€.
  • SI-prefix ("s") - rounded와 λΉ„μŠ·ν•˜μ§€λ§Œ, "9.5M"λ‚˜ "1.00Β΅"처럼 λ‹¨μœ„ 접미사λ₯Ό 뢙인닀.

"n" type은 ",g"의 μΆ•μ•½ν‘œν˜„μ΄λ‹€. precision 은 "f"와 "%" type으둜 ν¬λ§·νŒ…λœ κ°’μ—μ„œλŠ” μ†Œμˆ˜μ  λͺ‡μžλ¦¬κΉŒμ§€ 보여주어야 ν•˜λŠ”μ§€λ₯Ό λ‚˜νƒ€λ‚΄κ³ , "g", "r", "p" type으둜 ν¬λ§·νŒ…λœ κ°’μ—μ„œλŠ” μ†Œμˆ˜μ  μ•žλ’€λ‘œ λͺ‡μžλ¦¬λ₯Ό 보여주어야 ν•˜λŠ”μ§€λ₯Ό λ‚˜νƒ€λ‚Έλ‹€.

# d3.round(x[, n])

κ°’ x λ₯Ό μ†Œμˆ˜μ  n μžλ¦¬μˆ˜μ—μ„œ λ°˜μ˜¬λ¦Όν•œ 값을 λ°˜ν™˜ν•œλ‹€. n 을 λ¬΄μ‹œν•˜λ©΄ 기본값은 0이닀. λ°˜ν™˜κ°’μ€ 숫자이며 κ°€μž₯ κ°€κΉŒμš΄ 10의 -n 제곱의 배수둜 κ·Όμ‚¬μΉ˜λ₯Ό μž‘λŠ”λ‹€. κ°€κΉŒμš΄ λ°°μˆ˜κ°€ λ“±κ±°λ¦¬λ‘œ 두 개라면, λ°˜ν™˜κ°’μ€ μžλ°”μŠ€ν¬λ¦½νŠΈ λ‚΄μž₯ ν•¨μˆ˜μΈ round 와 λ™μΌν•˜κ²Œ λ°˜μ˜¬λ¦Όλœλ‹€. 결과값을 λ¬Έμžμ—΄λ‘œ λ³€ν™˜ν•˜λ©΄ IEEE λΆ€λ™μ†Œμˆ˜μ  μ •ν™•λ„λ‘œ μΈν•΄μ„œ λΆ€μ •ν™•ν•œ 값이 될 μˆ˜λ„ μžˆλ‹€. μ†Œμˆ˜μ  자리수λ₯Ό μ •ν•΄μ„œ λ¬Έμžμ—΄λ‘œ 숫자λ₯Ό ν¬λ§€νŒ…ν•  λ•ŒλŠ” d3.formatλ₯Ό μ‚¬μš©ν•œλ‹€.

Strings

# d3.requote(string)

μ •κ·œμ‹μ—μ„œ λ¬Έμžμ—΄ λ¦¬ν„°λŸ΄λ‘œ μ‚¬μš©λ  λ²•ν•œ string 의 μΈμš©λΆ€ν˜Έ(') 제거 버전을 λ°˜ν™˜ν•œλ‹€.

Dates

d3.time λͺ¨λ“ˆμ„ μ°Έκ³ ν•˜λΌ.

⚠️ **GitHub.com Fallback** ⚠️