如何读取 ggraph 径向图中的文本标签

san*_*oku 4 r ggplot2 ggraph ggforce

在 中ggraph,如果绘图是径向的,则无论repel=T是否使用,标签都会变得拥挤。

有没有办法使标签具有交互性或允许旋转图形以读取标签?

library(ggraph)
mtcarsDen <- as.dendrogram(hclust(dist(mtcars[1:4],  method='euclidean'), 
                            method='ward.D2'))
ggraph(graph = mtcarsDen, layout = 'dendrogram', repel = TRUE, circular = TRUE, 
   ratio = 0.5) + 
geom_edge_elbow() + 
geom_node_text(aes(x = x*1.05, y=y*1.05, filter=leaf, 
                 angle = node_angle(x, y), label = label), 
             size=3, hjust='outward') + 
geom_node_point(aes(filter=leaf)) + 
coord_fixed() + 
ggforce::theme_no_axes()
Run Code Online (Sandbox Code Playgroud)

abi*_*hat 5

您可以像这样修改角度美学:

ggraph(graph = mtcarsDen, layout = 'dendrogram', repel = TRUE, circular = TRUE, 
       ratio = 0.5) + 
  geom_edge_elbow() + 
  geom_node_text(aes(x = x*1.005, y=y*1.005, filter=leaf, 
                     angle = -((-node_angle(x, y)+90)%%180)+90, label = label), 
                 size=3, hjust='outward') + 
  geom_node_point(aes(filter=leaf)) + 
  coord_fixed() + 
  ggforce::theme_no_axes()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述