如何更改绘图 parcoords 图中多个 y 轴的颜色?

问题描述 投票:0回答:1

我可以使用布局来更改散点图中 x 轴和 y 轴的颜色,但是我无法更改 parcoords 图中存在的多个 y 轴的颜色。这是我迄今为止所取得的成就:

library(plotly)
textColor <- "red"
lineColor <- "orange"
plot_ly(x=rnorm(100), y=rnorm(100)) |>
  plotly::layout(
    xaxis = list(tickfont = list(color = textColor), color = lineColor),
    yaxis = list(tickfont = list(color = textColor), color = lineColor)
  )

plot_ly(
  type = "parcoords",
  dimensions = list(
    list(
      label = "a",
      values = runif(100)
    ),
    list(
      label = "b",
      values = runif(100)
    ),
    list(
      values = runif(100),
      label = "c"
    )
  )
) |> plotly::layout(
  font = list(color = textColor),
  yaxis = list(tickfont = list(color = textColor), color = lineColor)
)

scatter parcoords

你可以看到三个y轴仍然是黑色而不是橙色。

可行的解决方案是什么? python 解决方案对我来说就足够了。

r plotly
1个回答
0
投票

我在 R 的 Plotly 库中找不到相应的选项,但您可以通过 {GGally} 采取 ggplot-route,如此处所示。

您的情况:

library(GGally)
创建示例数据框(ggplot & Co 所需):

d <- Map(1:3, f = \(i) runif(99)) |> setNames(letters[1:3]) |> list2DF() d$dimension <- gl(3, 33, labels = letters[1:3])
创建绘图并转换为 Plotly:

p <- ggparcoord(d, columns = 1:3, groupColumn = 'dimension' ) + theme(panel.grid.major.x = element_line(colour = 'orange'))
这里,垂直网格颜色是通过

theme

设置的。对于单独样式的垂直线,请参阅 
?ggplot2::geom_vline

parallel coordinate plot using GGally and Plotly

© www.soinside.com 2019 - 2024. All rights reserved.