在HIghcharter中为R

时间:2019-09-18 14:30:09

标签: r highcharts r-highcharter

我在Hichcharts中使用R做过一个很酷的sankey图表。 结束节点的字体大小非常小,因此我想知道如何使其变大(并且容器也必须变宽)。

highchart() %>%
  hc_chart(type = 'sankey') %>%
  hc_add_series(
      data = list(
        list(from = 'FOOD', to = "M", weight = 10),
        list(from = 'CARS', to = "M",  weight = 50),
        list(from = 'READING', to = "M",  weight = 45),list(from = 'FOOD', to = "F", weight = 100),
        list(from = 'CARS', to = "F",  weight = 56),
        list(from = 'READING', to = "F",  weight = 25))
      )

enter image description here

1 个答案:

答案 0 :(得分:1)

您可以使用series.nodeWidth属性来增加节点宽度,但是它仅适用于所有节点。如果只想为特定节点设置它,则必须更改Highcharts核心代码。

您可以在dataLabels.nodeFormatter中更改的字体大小。这是一个纯JavaScript示例:https://jsfiddle.net/BlackLabel/9tL2zogq

nodeWidth: 50,
    dataLabels: {
      nodeFormatter() {
        if (this.key === 'M' || this.key === 'F') {
          return '<span style="font-size: 22px;">' + this.key + '</span>'
        } else {
          return this.key
        }
      }
    },

如果您在将其重写为R时遇到任何问题,请告诉我,然后我将编辑我的答案。 您可以使用JS()方法将JS函数注入R。