根据 R / ggraph 中的“y”值垂直组织图形节点 未安装包的数据

问题描述

我创建这个 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 (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...