d3.js 使用networkD3软件包时R中的粗体文本

rdrgkggo  于 2022-11-12  发布在  其他
关注(0)|答案(1)|浏览(124)

我已经在r中使用networkd3包构建了Sankey图,我想知道是否有一种方法可以将用作节点标签的文本加粗。我做了一些研究,没有发现任何与R中的networkD3直接相关的内容。

w51jfk4q

w51jfk4q1#

您可以通过在呈现时注入自定义JavaScript来实现一些CSS格式设置,例如...

library(networkD3)
library(jsonlite)
library(htmlwidgets)

URL <- paste0('https://cdn.rawgit.com/christophergandrud/networkD3/',
              'master/JSONdata/energy.json')
energy <- jsonlite::fromJSON(URL)

sn <- sankeyNetwork(Links = energy$links, Nodes = energy$nodes, 
                    Source = 'source', Target = 'target', Value = 'value', 
                    NodeID = 'name', units = 'TWh', fontSize = 12, 
                    nodeWidth = 30)

htmlwidgets::onRender(
  sn,
  '
  function(el) {
    d3.select(el).selectAll(".node text").attr("font-weight", "bold");
  }
  '
)

相关问题