首页 > 解决方案 > R中的圆包图

问题描述

我试图circlepack从我的数据框中绘制一个图,但我没有成功。

我想为每个人画一个圆圈,例如 S003,其中包含属于该人的类类型。大小表示每个人的每个班级发生的次数。

一直在尝试使用这两个线程 如何在 rhttps://www.r-graph-gallery.com/315-hide-first-level-in-circle-packing/的 ggraph 库中使用圆形包布局,但不能做。

test <- data.frame(individual = c("S003", "S003", "S004", "S004","S004", "S009", "S009", 
                                  "S016", "S016", "S016", "S016", "S025", "S025", "S027",
                                  "S027", "S035", "S035", "S035", "S035", "S036", "S036", 
                                  "S036", "S042", "S042", "S042", "S042" , "S042", "S042",
                                  "S043", "S043", "S043", "S045", "S045", "S045", "S045", 
                                  "S045", "S045", "S047" , "S047", "S047", "S047", "S047"),
                   class = c("NMF1", "NMF1", "NMF1", "NMF3", "NMF3", "NMF4", "NMF2", 
                             "NMF3", "NMF3", "NMF3" ,"NMF2", "NMF4", "NMF2", "NMF3", 
                             "NMF1", "NMF4", "NMF2", "NMF4", "NMF4", "NMF1", "NMF1", 
                             "NMF1", "NMF3", "NMF4", "NMF4", "NMF4", "NMF4", "NMF4", 
                             "NMF2", "NMF3", "NMF3" ,"NMF2", "NMF2", "NMF3", "NMF1", 
                             "NMF2", "NMF2", "NMF2", "NMF2", "NMF4", "NMF2", "NMF2"), 
                   count= c("2", "2", "1", "2", "2", "1", "2", "3", "3", "3", "1", "1",
                            "1", "1", "1", "3", "1", "3", "3", "1", "1", "1", "1", "5",
                            "5", "5", "5", "5", "1", "2" , "2", "4", "4", "1", "1", "4",
                            "4", "4", "4", "1", "4", "4"))

vertices <- test %>% distinct(class, count)
graph <- graph_from_data_frame(test, vertices = vertices)
Error in graph_from_data_frame(test, vertices = vertices) : 
  Duplicate vertex names

标签: rggplot2ggraph

解决方案


推荐阅读