首页 > 解决方案 > 如何让ggplot识别“repel”参数

问题描述

我正在尝试在 geom_nodetext 和 geom_edgetext 中运行 repel 函数,但无法使其工作...我总是收到此错误消息:警告消息:忽略未知参数:repel。你知道如何让它工作吗?示例如下

library(NetworkToolbox)# version 1.4.1
library(dplyr)#version1.02
library(ggplot2)# version3.3.3
library(ggnetwork) #version0.5.8
library(ggrepel) #0.9.1


M1 <- as_tibble(replicate(21,sample(1:3,100,rep=TRUE))) 


colnames(M1) <- c("Wordtoolong1st", "Wordtoolong2nd", "Wordtoolong3th", "Wordtoolong4th", "Wordtoolong5th", 
                  "Wordtoolong6th","Wordtoolong7th","Wordtoolong8th","Wordtoolong9th","Wordtoolong10th",
                  "Wordtoolong11th","Wordtoolong12th","Wordtoolong13th","Wordtoolong14th","Wordtoolong15th",
                  "Wordtoolong16th","Wordtoolong17th","Wordtoolong18th","Wordtoolong19th",
                  "Wordtoolong20th","Wordtoolong21th")

M2 <- as.matrix(round(cor(M1[,],method ="kendall"),2))

MAST <- MaST(M2, normal = False)
gr4ph <-  graph.adjacency(MAST , mode = "lower",weight=TRUE) 
gg <-  ggnetwork(gr4ph, arrow.gap = 0, layout = layout_with_fr(gr4ph))

ggplot(gg, aes(x = x, y = y, xend = xend, yend = yend)) +
  geom_edges(color = "grey", alpha = 1, curvature = 0.1) +
  geom_nodes(aes(color = name), size = 6) +  theme_blank() +
  geom_nodetext(aes(label = name), color = "black", size = 3.5,repel=TRUE) +
  geom_edgetext(aes(label = weight), size = 3,alpha=0.01,repel= TRUE) + 
  theme(plot.margin = unit(c(0, 1, 2, 4), "cm"))+
  guides(color = guide_legend(keyheight = 0.09, keywidth = 0.09,
                              title = "Mots")) + theme(legend.position = c(-0.05, 0.14),
                                                       legend.background = element_blank(),
                                                       legend.text = element_text(size = 7))

谢谢

标签: rggplot2network-analysis

解决方案


示例代码中的geom_nodetextand调用包含无法识别的参数。两种几何图形都应使用与工作相同的参数。参数也显示在例如下。geom_edgetextrepel = TRUEgeom_text_repel?geom_nodetext

其余的代码看起来不错。


推荐阅读