Aquí hay un código de ejemplo que uso para hacer un gráfico de Sankey usando networkD3::sankeyNetwork()
library("networkD3") a <- read.csv(header = TRUE, text = " date,Data Center,Customer,companyID,source,target,value 6/1/2021,dcA,customer1,companyID1,open_list_view_1,open_card_2,1 6/1/2021,dcA,customer1,companyID1,open_card_2,edit_card_3,1 6/1/2021,dcA,customer1,companyID1,edit_card_3,save_card_4,1 6/1/2021,dcA,customer1,companyID1,save_card_4,back_to_card_list_5,2 6/1/2021,dcA,customer1,companyID1,back_to_card_list_5,show_more_6,1 6/1/2021,dcA,customer1,companyID1,show_more_6,view_introduction_7,1 6/1/2021,dcA,customer1,companyID1,view_introduction_7,scroll_down_8,2 6/2/2021,dcA,customer2,companyID2,open_list_view_1,open_card_2,3 6/2/2021,dcA,customer2,companyID2,open_card_2,edit_card_3,1 6/2/2021,dcA,customer2,companyID2,edit_card_3,save_card_4,4 6/2/2021,dcA,customer2,companyID2,save_card_4,back_to_card_list_5,2 6/2/2021,dcA,customer2,companyID2,back_to_card_list_5,show_more_6,1 6/2/2021,dcA,customer2,companyID2,show_more_6,view_introduction_7,1 6/2/2021,dcA,customer2,companyID2,view_introduction_7,scroll_down_8,5 ") node_names <- unique(c(as.character(a$source), as.character(a$target))) nodes <- data.frame(name = node_names) links <- data.frame(source = match(a$source, node_names) - 1, target = match(a$target, node_names) - 1, value = a$value) sankeyNetwork(Links = links, Nodes = nodes, Source = "source", Target = "target", Value = "value", NodeID = "name", sinksRight = FALSE)Quiero cambiar el color de todos los enlaces a azul. Creo que el argumento 'grupos de enlace' podría ayudar.
Agregue una columna a su marco de datos de links que especificará el grupo para cada enlace (en su caso, todos estarán en el mismo grupo). Luego agregue un comando de escala de color personalizado que especificará "azul" para ese grupo. Luego dígale a la función sankeyNetwork() el nombre de la columna en sus links data.frame que especifica el grupo de enlaces y páselo a su colorScale personalizado.
library("networkD3") data <- read.csv(header = TRUE, text = " date,Data Center,Customer,companyID,source,target,value 6/1/2021,dcA,customer1,companyID1,open_list_view_1,open_card_2,1 6/1/2021,dcA,customer1,companyID1,open_card_2,edit_card_3,1 6/1/2021,dcA,customer1,companyID1,edit_card_3,save_card_4,1 6/1/2021,dcA,customer1,companyID1,save_card_4,back_to_card_list_5,2 6/1/2021,dcA,customer1,companyID1,back_to_card_list_5,show_more_6,1 6/1/2021,dcA,customer1,companyID1,show_more_6,view_introduction_7,1 6/1/2021,dcA,customer1,companyID1,view_introduction_7,scroll_down_8,2 6/2/2021,dcA,customer2,companyID2,open_list_view_1,open_card_2,3 6/2/2021,dcA,customer2,companyID2,open_card_2,edit_card_3,1 6/2/2021,dcA,customer2,companyID2,edit_card_3,save_card_4,4 6/2/2021,dcA,customer2,companyID2,save_card_4,back_to_card_list_5,2 6/2/2021,dcA,customer2,companyID2,back_to_card_list_5,show_more_6,1 6/2/2021,dcA,customer2,companyID2,show_more_6,view_introduction_7,1 6/2/2021,dcA,customer2,companyID2,view_introduction_7,scroll_down_8,5 ") node_names <- unique(c(as.character(data$source), as.character(data$target))) nodes <- data.frame(name = node_names) links <- data.frame(source = match(data$source, node_names) - 1, target = match(data$target, node_names) - 1, value = data$value) links$linkgroup <- "linkgrp" colourScale <- 'd3.scaleOrdinal() .domain(["linkgrp"]) .range(["blue"].concat(d3.schemeCategory20))' sankeyNetwork(Links = links, Nodes = nodes, Source = "source", Target = "target", Value = "value", NodeID = "name", sinksRight = FALSE, LinkGroup = "linkgroup", colourScale = colourScale)