Контекст
Я использую ggraph
, чтобы расположить узлы (листья дерева) в круговой дендрограмме, а затем добавить соединения между некоторыми узлами (используя иерархическое связывание, используя geom_conn_bundle
):
library(ggraph)
library(igraph)
# Example data
edges <- data.frame(from="root", to=paste("leaf", seq(1,100), sep=""))
vertices <- data.frame(name = unique(c(as.character(edges$from), as.character(edges$to))) )
tree <- graph_from_data_frame( edges, vertices=vertices )
# Drawing nodes
pr <- ggraph(tree, layout = "dendrogram", circular = TRUE) +
geom_edge_diagonal(alpha = 0.2)
# Example connection
pr <- pr + geom_conn_bundle(
data = get_con(from = 23, to = 42),
alpha=0.8,
width=3,
colour="skyblue",
tension = 0.9
)
print(pr)
Это прекрасно отображает почти прозрачную дендрограмму и некоторые (в этом примере один) соединения в skyblue
.
Проблема / Желаемый выход
Мне бы хотелось, чтобы направление соединения обозначалось цветовым градиентом (т. Е. Начиналось с зеленого, медленно переходя в красный) вместо того, чтобы показывать соединение только одним цветом (голубой).Как я могу добиться такого цветового градиента, используя R и ggraph geom_conn_bundle
?
Следующий отрывок из Holten (2006) может служить примером того, как я хотел бы, чтобы соединения ссмотреть: