从数据帧结构创建一棵树,并在所有节点关闭的情况下渲染它

问题描述

我有这种类型的数据

     level1 level2
1     fruit  apple
2     fruit orange
3 vegetable carrot
4 vegetable celery

我想把它变成一个闪亮的树,并在选择(和关闭)所有节点的情况下渲染它

这是我的尝试

library(shiny)
library(data.tree)
library(shinytree)

dta <- 
  data.frame(
    stringsAsFactors = FALSE,level1 = c("fruit","fruit","vegetable","vegetable"),level2 = c("apple","orange","carrot","celery")
  )

ui <- fluidPage(
  
  shinytree::shinytree("tree_food",checkBox = TRUE)
)

server <- function(input,output,session) {
  
  tree_food <- reactive({
    
    # create  tree
    dta$pathString <- paste("p",dta$level1,dta$level2,sep = "/",na.rm = TRUE)
    
    htree <- data.tree::as.Node(dta["pathString"],pathDelimiter = "/",na.rm=TRUE)
    
    # turn it into list format for {shinytree}
    TreeList <- data.tree::ToListSimple(htree,nameName = "")
    # remove the 'name' node
    TreeList$name <- NULL
    
    TreeList
  })
  
  output$tree_food <- renderTree({tree_food()})
  
}

shinyApp(ui,server)

树被渲染得很好

enter image description here

  • 有没有更好的方法可以从我拥有的数据结构获取到树?
  • 如何在所有节点都被选中和关闭的情况下渲染树?

enter image description here

解决方法

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

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

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

相关问答

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