问题描述
我创建这个 little package 是为了组织“家庭”数据,希望使用 ggraph/tidygraph 创建谱系树。我设法获得了这样的图(数据可以在没有包的情况下加载 - 参见最后的代码):
remotes::install_github("DominiqueMakowski/tidyfamily")
library(tidyfamily)
library(ggraph)
library(tidygraph)
data <- dynasty_capetian()
edges <- tidyfamily:::.family_get_edges(data)
nodes <- tidyfamily:::.family_get_nodes(data)
tidygraph::tbl_graph(nodes=nodes,edges=edges) %>%
ggraph(layout = "nicely") +
geom_edge_link(aes(color = link)) +
geom_node_label(aes(label = label)) +
ggraph::theme_graph()
由 reprex package (v0.2.1) 于 2021 年 4 月 15 日创建
然而,图形并不是最清晰的可视化,看起来更像树或树状图的东西会更好。
我相信其中一种方法(或至少是第一步)是根据人们的出生日期组织节点(birth_year
可作为节点的属性) ).
换句话说,我想在这个图中隐含一个“y”轴,并将节点放在它们的高度,这取决于它们的一些属性。这可能吗?
未安装包的数据
data <- structure(list(id = c("Charles","Louis XIV","Louis XV","Louis1661","Louis1682","Marie-Adélaïde de Savoie","Marie-Thérèse d'Autriche","Marie-Thérèse de France","Marie Anne Christine de Bavière","Philippe-Charles de France","Philippe V"),name = c("Charles","Louis de France","Philippe V d'Espagne"),text = c(NA,NA,"Duc de Bourgogne","La Petite Madame","Duc d'Anjou",NA),sex = c("Male","Male","Female","Male"),birth_year = c(1686,1638,1710,1661,1682,1685,1667,1660,1668,1683),birth_month = c(7,9,2,11,12,10,8,birth_day = c(31L,5L,15L,1L,6L,10L,birth_text = c("31 Jul 1686","05 Sep 1638","15 Feb 1710","01 Nov 1661","1682","06 Dec 1685","10 Oct 1638","1667","1660","05 Aug 1668","1683"),death_year = c(NA,1715,1774,1711,1712,1683,1672,1671,1746),death_month = c(NA,5,4,7,death_day = c(NA,14L,12L,30L,death_text = c("UnkNown","01 Sep 1715","10 May 1774","14 Apr 1711","1712","12 Feb 1712","30 Jul 1683","1672","UnkNown","10 Jul 1671","1746"),father = c("Louis1661","Louis1661"),mother = c("Marie Anne Christine de Bavière","Marie Anne Christine de Bavière"),born_of = c("Wedding","Wedding","Wedding")),row.names = c(NA,-11L),class = "data.frame")
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)