r - plotly 旭日着色

标签 r colors plotly r-plotly sunburst-diagram

我正在尝试给 上色先按父级,然后按级别,使parent1 和parent2 分别为红色和蓝色,然后按级别向外渐变。

我似乎很接近使用带有 sunburstcolorway 的布局,但它不太按级别着色。目前,我的色系输入是为每个观察指定的十六进制代码列表。

如果有一种方法可以为每个单独的部分指定颜色,那就太理想了。我似乎无法弄清楚,我对此很陌生

library(plotly)
clin2 <- data.frame(
  stringsAsFactors = FALSE,
  ids = c("MGH","CU","MGH - WT",
          "CU - WT","MGH - KDM","CU - KDM","MGH - G2032R",
          "MGH - S1986F","MGH - D2033N","CU - L1951R/L2026M"),
  labels = c("Gainor<br>et al. 2017",
             "McCoach<br>et al. 2018","ROS1<br>Extrinsic",
             "ROS1<br>Extrinsic","ROS1<br>Intrinsic","ROS<br>Intrinsic","G2032R",
             "S1986F","D2033N","L1951R/<br>L2026M"),
  parents = c(NA,NA,"MGH","CU","MGH",
              "CU","MGH - KDM","MGH - KDM","MGH - KDM","CU - KDM"),
  values = c(17L, 12L, 8L, 11L, 9L, 1L, 7L, 1L, 1L, 1L),
  colors = c("#3182bd", "#e6550d", "#9ecae1", "#fdae6b", "#9ecae1",
             "#fdae6b", "#deebf7", "#deebf7", "#deebf7", "#fee6ce")
)

clin2_plot <- plot_ly(clin2, ids = ~ids, labels = ~labels, parents = ~parents, 
                      values = ~values, type = 'sunburst', branchvalues = 'total'
) %>% layout(sunburstcolorway = clin2$colors)

clin2_plot

This is the current output

提前致谢。

最佳答案

我编辑了您的代码以使其可重现。对我来说,它似乎运行良好。我添加了黑色痕迹 - 请检查以下内容:

library(plotly)

clin2 <- data.frame(
  stringsAsFactors = FALSE,
  ids = c("MGH","CU","MGH - WT",
          "CU - WT","MGH - KDM","CU - KDM","MGH - G2032R",
          "MGH - S1986F","MGH - D2033N","CU - L1951R/L2026M"),
  labels = c("Gainor<br>et al. 2017",
             "McCoach<br>et al. 2018","ROS1<br>Extrinsic",
             "ROS1<br>Extrinsic","ROS1<br>Intrinsic","ROS<br>Intrinsic","G2032R",
             "S1986F","D2033N","L1951R/<br>L2026M"),
  parents = c(NA,NA,"MGH","CU","MGH",
              "CU","MGH - KDM","MGH - KDM","MGH - KDM","CU - KDM"),
  values = c(17L, 12L, 8L, 11L, 9L, 1L, 7L, 1L, 1L, 1L),
  colors = c("#111111", "#e6550d", "#9ecae1", "#fdae6b", "#9ecae1",
             "#fdae6b", "#deebf7", "#deebf7", "#deebf7", "#fee6ce")
)

clin2_plot <- plot_ly(clin2, ids = ~ids, labels = ~labels, parents = ~parents, 
                      values = ~values, type = 'sunburst', branchvalues = 'total'
) %>% layout(colorway = ~colors)

clin2_plot

Result

关于r - plotly 旭日着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61130745/

相关文章:

python - 如何居中绘制 3d 曲面图?

python - Plotly:如何在 plotly 线图中的特定点添加标记(python/pandas)

python - Plotly:如何填充线之间的区域?

html - Chrome 中图像周围的边框颜色 : Is this a bug?

c# - 根据值更改 DataGrid 单元格颜色

regex - R:如何将字符串的一部分转换为变量名并在同一字符串中返回其值?

r - 导入 - 具有相同名称但来自不同包的函数

r - 我有一个 .dta 文件,其中每个变量都有变量标签。导入到 R 后,如何查看这些标签?

r - 在 RStudio 中清除命令历史记录的命令或键盘快捷键

javascript - 慢慢改变十六进制颜色