【问题标题】:How to format currency values in valueBox shinydashboard?如何在 valueBox shinydashboard 中格式化货币值?
【发布时间】:2015-08-28 20:30:42
【问题描述】:
我正在尝试使用 R 中的 shinydashboard 编写仪表板,以使用 renderValueBox 和 valueBoxOutput 显示一些值。这些值不是硬编码的,而是每天从另一个来源抓取的。
这些值是货币数字,应该像 $XXX,XXX.XX 这样报告,但我看到的是 XXXXXX.XX。有没有一种方法,比如包装器,可以轻松地格式化这些值?否则,我曾想过用 gsub 蛮力强制一些正则表达式...但是 ew。请和谢谢:)
【问题讨论】:
标签:
r
shiny
currency
dashboard
【解决方案1】:
发现函数prettyNum():这个函数对于简单地转换为逗号分隔的数字来说非常棒。
> prettyNum(56789, big.mark = ",")
> 56,789
【解决方案2】:
另一种方法是使用{scales} 包和dollar_format() 函数。
这个函数是一个labeling函数工厂,从某种意义上说,它创建了其他函数。
我通常需要输出欧元的数字,所以我定义了如下函数:
euro_format <- scales::dollar_format(
prefix = "\u20ac", # the euro symbol
suffix = "",
big.mark = ",",
decimal.mark = ".",
accuracy = 1
)
>euro_format(20842)
[1] "€20,842"