如何在 R 的 Highchart 瀑布图中添加“isSum”栏?

戴恩

我跟随这个网站使用 Highcharts 在 R 中制作了一个瀑布图。但我最终无法添加“isSum”栏。在 .js 中如何做很容易获得,但不适用于 R。

我还尝试在最后以名称“isSum”在 df 中添加一列并插入真/假(在最后添加累积总和行后),但没有奏效。也尝试在hc_series选项下执行“isSum=T”,但没有奏效。

一个例子如下:

df=data.frame(y=c(232,345,544,100),name=c("one","two","three","four"))    

highchart()%>%
  hc_chart(type="waterfall")%>%
  hc_add_series(df)

上面的输出: 在此处输入图片说明

raf18seb

我的答案并不完美,因为我不是 R 程序员 - 也许可以做得更好。我不知道如何定义数据以在 R 中包含 isSum 属性,但我知道如何在 JavaScript 中做到这一点。

我在 R 中使用了 JS() 函数,它允许我们注入 JavaScript 代码,并以这种方式更新了最后一点:

library(highcharter)

df=data.frame(y=c(232,345,544,100),name=c("one","two","three","four"))    

highchart()%>%
  hc_chart(type="waterfall", events = list(load = JS("function () {
          this.series[0].points[3].update({
            isSum: true
          });
  }")))%>%
  hc_add_series(df)

编辑我明白了。您可以像这样在数据中定义它:

df=data.frame(y=c(232,345,544,100),name=c("one","two","three","four"),isSum=c(FALSE, FALSE, FALSE, TRUE))  

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章