#' combine two dfs
#' @param df1 a df contains links and nodes.
#' @param df2 a df contains links and nodes.
#' @return the combined df
#' @export
#'
#'
#'
combine_dfs<- function(df1, df2){
  df1_links <- df1[[1]]
  df1_nodes <- df1[[2]]

  df2_links <- df2[[1]]
  df2_nodes <- df2[[2]]
  max_value = length(unique(df2_nodes$name))

  df1_nodes <- df1_nodes %>% mutate(level_x = level_x/2 )

  df2_links <- df2_links %>% mutate(source= source + max_value,
                                    target= target + max_value)


  df2_nodes <- df2_nodes %>% mutate(rank=rank+max_value,
Xinxin Yang's avatar
Xinxin Yang committed
                                    level_x = level_x/2 + 1 )

  ln_all <- list(df1_links %>% bind_rows(df2_links),
                 df1_nodes %>% bind_rows(df2_nodes))

  return(ln_all)

}