我可以定位用 R dm 包绘制的表格吗

问题描述

当我使用带有 dmdm_draw() 包绘制我的数据库的 ER 图时,它绘制了 10 个堆叠在单个列中的表,并将带有主键的表放入另一列:

suppresspackageStartupMessages(library(tidyverse))
suppresspackageStartupMessages(library(dm))

Everybody <- tibble(project = 27,who = 1)
Demographics <- tibble(project = 27,who = 1,Age = 1,Sex = "x",Education = "some")
Psychiatric <- tibble(project = 27,who = 1)
Randomization <- tibble(project = 27,when = 1)
Site <- tibble(project = 27,site = 1)
ASI <- tibble(project = 27,score = 1)
RBS <- tibble(project = 27,score = 1)
TLFB <- tibble(project = 27,when = 1,what = "drug")
UDS <- tibble(project = 27,what = "drug")
Treatment <- tibble(project = 27,what = "drug",amount = 1)
Withdrawl <- tibble(project = 27,severity = 1)

nokeys <- dm(ASI,Demographics,Everybody,Psychiatric,Randomization,RBS,Site,TLFB,Treatment,UDS,Withdrawl)

primary <- nokeys %>% 
    dm_add_pk(table = Everybody,columns = who)

allKeys <- primary %>% 
    dm_add_fk(table = Demographics,column = who,ref_table = Everybody) %>%
    dm_add_fk(table = Psychiatric,ref_table = Everybody) %>%
    dm_add_fk(table = Randomization,ref_table = Everybody) %>%
    dm_add_fk(table = Site,ref_table = Everybody) %>%
    dm_add_fk(table = ASI,ref_table = Everybody) %>%
    dm_add_fk(table = RBS,ref_table = Everybody) %>% 
    dm_add_fk(table = TLFB,ref_table = Everybody) %>%     
    dm_add_fk(table = UDS,ref_table = Everybody) %>%
    dm_add_fk(table = Treatment,ref_table = Everybody) %>% 
    dm_add_fk(table = Withdrawl,ref_table = Everybody) 

 allKeys %>% 
  dm_draw(view_type = "all")

有什么方法可以指定我想要两列,每列显示五个表。 dm_draw() 的文档指出它返回一个 grViz 对象。我尝试将 dm_draw输出保存为对象,但我不知道如何让 DiagrammeR 绘制对象。我猜理论上我可以使用 DiagrammeR 来指定位置详细信息,但我一无所知......

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)