RHandsontable 中的行数字(百分比)格式

Row Numeric (Percent) Formatting in RHandsontable

我需要使用 RHandsontable 格式化旋转 table 的行。列格式非常简单,但 hot_row() 不提供与 hot_col() 相同的灵活性。

有没有人想出格式化这个的方法...

library(rhandsontable)
df <- data.frame(q1=c(1,0.2),q2=c(2,0.3),q3=c(3,0.4),q4=c(4,0.5))
rownames(df) <- c('Amt','Pct')
rhandsontable(df)

no formatting

...第一行 (Amt) 显示整数 (1,2,3,4),第二行 (Pct) 显示百分比 (20%,30%,40%,50%)?

formatted

已解决

对于任何感兴趣的人 - pct_row 和 int_row 是 arbitrarily-named 论点。这些参数在 instance.params 中公开。然后我可以检查该行是否是该参数的一部分,并在 td.innerHTML.

中相应地处理它
library(rhandsontable)
df <- data.frame(q1=c(1,0.2),q2=c(2,0.3),q3=c(3,0.4),q4=c(4,0.5))
rownames(df) <- c('Amt','Pct')  
rhandsontable(df,pct_row=1,int_row=0) %>%
       hot_cols(renderer = "function(instance, td, row, col, prop, value, cellProperties) {
           Handsontable.renderers.NumericRenderer.apply(this, arguments);
           if (instance.params && instance.params.pct_row === row) {
               td.innerHTML = `${Number.parseFloat(value*100)}%`
           } else if (instance.params && instance.params.int_row === row) {
               td.innerHTML = `${value}`
           }
         }")

非常感谢这个 post 为我连接了一些点... https://forum.handsontable.com/t/percentage-formatting/5172/3