| 17 | const parser = new FormulaParser(); |
| 18 | |
| 19 | function formatCompactNumber(number) { |
| 20 | if (number < 1000) { |
| 21 | return number; |
| 22 | } else if (number >= 1000 && number < 1_000_000) { |
| 23 | return `${(number / 1000).toFixed(1)}K`; |
| 24 | } else if (number >= 1_000_000 && number < 1_000_000_000) { |
| 25 | return `${(number / 1_000_000).toFixed(1)}M`; |
| 26 | } else if (number >= 1_000_000_000 && number < 1_000_000_000_000) { |
| 27 | return `${(number / 1_000_000_000).toFixed(1)}B`; |
| 28 | } else if (number >= 1_000_000_000_000 && number < 1_000_000_000_000_000) { |
| 29 | return `${(number / 1_000_000_000_000).toFixed(1)}T`; |
| 30 | } else { |
| 31 | return 0; |
| 32 | } |
| 33 | } |
| 34 | |
| 35 | class AxisChart { |
| 36 | constructor(data, timezone = "") { |