View source: R/data.tree-conversion.R
treeToJSON | R Documentation |
Walk through a data.tree
and constructs a JSON string,
which can be rendered by shinyTree.
treeToJSON(
tree,
keepRoot = FALSE,
topLevelSlots = c("default", "all"),
createNewId = TRUE,
pretty = FALSE
)
tree |
the data.tree which should be parses |
keepRoot |
logical. If |
topLevelSlots |
determines which slots should be moved to the top level of the
node. If |
createNewId |
logical. If |
pretty |
logical. If |
The JSON string generated follows the jsTree specifications. In particular it encodes children nodes via the ‘children’ slot.
All atomic or list slots of a node in the tree are stored in a data slot in the resulting JSON.
If the user wants to store some slots not in the data slot but on the top
level of the node, parameter topLevelSlots
can be used. This is useful
for additional parameters such as ‘icon’, ‘li_attr’ or
‘a_attr’, which jsTree expect to be on the top level of the node.
An example of how to make use of this functionality can be found in the example folder of this library.
**Disclaimer**
These are helper functions from the github version of the shinyTree package which are very helpful to transform dataframes to nested lists and back again. These functions are not yet available (still listed as an enhancement Add data.frame -> shinyTree helper function #8 ) in the lastest version on CRAN v0.2.7 and the github version builds are currently failing. Rather than pulling the dev version of the pacakge to include these functions, adding them here until a stable version is available on CRAN. I claim no credit or ownership of any of this code. All credit should be attributed to the original authors listed on the github repo.
a JSON string representing the data.tree
updateTree
and renderTree
need an unevaluated JSON
string. Hence, this function returns a string rather than the JSON object itself.
Thorn Thaler, thorn.thaler@thothal.at
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.