Greetings - Is anyone aware of an automatic code diagrammer/flow chart creator that works for the R language (either a contributed package, or external software)? I need to explain some code structure of a package I'm working on to non-R users, and would find it extremely helpful to have such a program similar to, for example, Visustin ( http://www.aivosto.com/visustin.html ). I can do it "by hand" (possibly with the help of the 'diagram' package) but it seems like automated capabilities for recognizing nested structures and argument-passing would be of good general use to package developers. Much appreciated, -Ben Bryant [[alternative HTML version deleted]]
findGlobals in the codetools package can find all the functions that a function calls and you could construct a call graph from that by combining that with RGraphviz in Bioconductor. For example, the proto package can automatically create a graph using RGraphviz showing the parent child relationship among the proto objects in a program. The graph at the top of the following page was generated like that from the program that you can view by clicking on the image: http://code.google.com/p/r-proto/wiki/Overview Its mainly applicable if you use proto but does illustrate the use of RGraphviz. On Mon, Oct 6, 2008 at 8:32 PM, Ben Bryant <bpbryant at gmail.com> wrote:> Greetings - > > Is anyone aware of an automatic code diagrammer/flow chart creator that > works for the R language (either a contributed package, or external > software)? I need to explain some code structure of a package I'm working > on to non-R users, and would find it extremely helpful to have such a > program similar to, for example, Visustin ( > http://www.aivosto.com/visustin.html ). I can do it "by hand" (possibly > with the help of the 'diagram' package) but it seems like automated > capabilities for recognizing nested structures and argument-passing would be > of good general use to package developers. > > Much appreciated, > -Ben Bryant > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. >
This thread mentioning package mvbutils, function foodweb() might give you a start? http://tolstoy.newcastle.edu.au/R/help/06/04/24587.html Best, Erik Ben Bryant wrote:> Greetings - > > Is anyone aware of an automatic code diagrammer/flow chart creator that > works for the R language (either a contributed package, or external > software)? I need to explain some code structure of a package I'm working > on to non-R users, and would find it extremely helpful to have such a > program similar to, for example, Visustin ( > http://www.aivosto.com/visustin.html ). I can do it "by hand" (possibly > with the help of the 'diagram' package) but it seems like automated > capabilities for recognizing nested structures and argument-passing would be > of good general use to package developers. > > Much appreciated, > -Ben Bryant > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code.
Ben Bryant wrote:> Greetings - > > Is anyone aware of an automatic code diagrammer/flow chart creator that > works for the R language (either a contributed package, or external > software)? I need to explain some code structure of a package I'm working > on to non-R users, and would find it extremely helpful to have such a > program similar to, for example, Visustin ( > http://www.aivosto.com/visustin.html ). I can do it "by hand" (possibly > with the help of the 'diagram' package) but it seems like automated > capabilities for recognizing nested structures and argument-passing would be > of good general use to package developers.When you document your package using Roxygen, you can generate callgraphs (using the @callGraph and/or @callGraphPrimitives tags). The roxygen package homepage can be found at http://roxygen.org/ and the vignette has an example of a call graph (and how to generate it). HTH, Tobias> Much appreciated, > -Ben Bryant > > [[alternative HTML version deleted]] > > ______________________________________________ > R-help at r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > >