如何在 valueBox shinydashboard 中格式化货币值?

How to format currency values in valueBox shinydashboard?

我正在尝试在 R 中使用 shinydashboard 编写一个仪表板,以使用 renderValueBox 和 valueBoxOutput 显示一些值。这些值不是硬编码的,而是每天从另一个来源获取的。 这些值是货币数字,应该像 $XXX,XXX.XX 这样报告,但我看到的是 XXXXXX.XX。有没有一种方法,比如包装器,可以轻松地格式化这些值?否则我想过用 gsub 强行使用一些正则表达式......但是 ew。请感谢 :)

发现函数prettyNum():这个函数对于简单转换为逗号分隔的数字来说非常棒。

> prettyNum(56789, big.mark = ",")
> 56,789

另一种方法是使用{scales} 包和dollar_format() 函数。 这个函数是一个 labelling 函数工厂,因为它创建了其他函数。

我平时需要输出欧元数字,所以定义了如下函数:

euro_format <- scales::dollar_format(
  prefix = "\u20ac", # the euro symbol
  suffix = "",
  big.mark = ",",
  decimal.mark = ".",
  accuracy = 1
)

>euro_format(20842)
[1] "€20,842"