R-highcharter 中平行图中的彩色 yaxis

color yaxis in parallelplot in R-highcharter

此问题是 的后续问题。 假设我们有一个由

创建的平行图
library(highcharter)
library(purrr)
library(dplyr)

series_lst <- 
  iris %>% 
  as_tibble() %>% 
  asplit(1) %>% 
  imap(~list(
    name = paste("observation", .y),
    data = as.numeric(.x[1:4]),
    color = "steelblue"
  ))

hc <- 
  highchart() %>% 
  hc_chart(parallelCoordinates = TRUE, type = "spline") %>% 
  hc_xAxis(categories = names(iris)[1:4]) %>% 
  hc_add_series_list(series_lst)

这导致

我现在想自定义 y-Axis。由于我在我的应用程序中使用了深色主题,因此我需要将标签设为白色。但在我们的示例中,假设我们想要将 y-axis 标签设为红色。在highcharter中,有两个修改y-axis的函数——hc_yAxishc_yAxis_multiples。 我试过了

hc %>% hc_yAxis(labels = list(style = list(color = "red")))

这导致仅第一个轴上的标签变为红色。我也试过

hc %>% hc_yAxis(labels = rep(list(style = list(color = "red")),4))

但没有任何变化。我试过的其他功能也一样

hc %>% hc_yAxis_multiples(labels = list(style = list(color = "red")))
hc %>% hc_yAxis_multiples(labels = rep(list(style = list(color = "red")),4))

在 highhcarts 的示例中 https://jsfiddle.net/gh/get/library/pure/highcharts/highcharts/tree/master/samples/highcharts/demo/parallel-coordinates 还有更多选项可以设置不同的 y-axes,例如可以更改类型或提供自定义标签。如何使用 R highcharter-package 实现此目的?

yAxis_lst <- rep(
  list(
    list(
      labels = list(style = list(color = "red"))
    )
  ),
  4
)

hc <- 
  highchart(hc_opts = list(yAxis = yAxis_lst)) %>% 
  hc_plotOptions(series = list(label = list(enabled = FALSE))) %>% 
  hc_chart(parallelCoordinates = TRUE, type = "spline", reflow = TRUE) %>% 
  hc_xAxis(categories = names(iris)[1:4]) %>% 
  hc_add_series_list(series_lst)

是的,这些列表看起来很复杂:)

我可以在这里给出的一个建议是使用 export_hc 函数。这允许您将图表保存为 javascript 代码。通过这种方式,您将准确地看到每个 highcharter 函数在幕后做了什么,并且更容易理解。通常很清楚 js 输出应该如何使其工作(当您与工作 jsfiddle 示例进行比较时)。

我使用的工作流程如下:

  1. 将您的 hc 导出到 js 文件。
  2. 对 R 代码进行少量修改
  3. 再次导出
  4. 看看有什么变化