Re: [Bioc-devel] Classes to be supported by ggraph
hi, i use the part of the functionality of the graph package within my packages qpgraph and VariantFiltering. I mostly use the 'graphBAM' class that provides a memory-efficient representation of the graph and the possiblity to store data associated with nodes and edges via the 'nodeData()' and 'edgeData()' setters and getters. while the graph package is not among the most actively developed one, it may have about 80 other packages that depend or import its functionality. i guess there are ways to explore automatically what functionality is used or just what is more popular, which can give you a hint about what to implement in 'ggraph'. cheers, robert. On 2/6/16 12:20 PM, Thomas Lin Pedersen wrote: I’m in the process of developing ggraph (https://github.com/thomasp85/ggraph) - An extensive plotting framework for graph/tree/network data based on ggplot2. Currently the class support is focused on igraph and dendrogram, but the idea is to extend it with support for additional graph representations in R. The easy way to do this is through conversion to one of the two currently supported classes, but I would like to hear from the developers and users of especially the graph package, whether there are any downsides to this approach, i.e. are there features/information captured by the graphNEL class that would disappear with conversion to an igraph object. Also if someone is working with, or developing other graph representations and would like to see support in ggraph, please let me know… best Thomas [[alternative HTML version deleted]] ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
[Bioc-devel] Classes to be supported by ggraph
Possibly of interest on this topic, though it implements a different sort of (interactive) solution, are two Bioc packages: RCyjs and RCy3. RCyjs renders to the browser, using the cytoscape.js javascript library and websockets: http://js.cytoscape.org/ RCy3 renders to Cytoscape, the mature and popular network visualization desktop app: http://cytoscape.org/ Both bioc packages forgo the relatively non-interactive tradition of plotting in R, for a fully interactive approach. Both R and the rendering platforms are simultaneously and reciprocally fully interactive. The devel versions of each of these packages would be the ones to look at if you are interested. RCyjs http://bioconductor.org/packages/3.3/bioc/html/RCyjs.html RCy3 http://bioconductor.org/packages/3.3/bioc/html/RCy3.html RCyjs is currently a little bit more mature, but RCy3 is rapidly catching up. RCyjs is based upon the Bioc class “BrowserViz” and uses he httpuv package maintained by the Shiny project and nicely extended by Hector Corrado Bravo for http and web socket. The goal of both of these packages is 1) use community standard network visualization tools (Cytoscape for the desktop, cytoscape.js in the browser) 2) preserve and extend the fully interactive nature of both R, and the Cytoscape* rendering and analysis platforms. The unit tests for each package are extensive. They, along with the package vignettes, are a good introduction to the capabilities and programming idioms of the packages. They may be of interest to some. Questions, bug reports, requests for new features are always welcome. Regards, - Paul ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
Re: [Bioc-devel] Classes to be supported by ggraph
Dear Thomas thank you for asking about this. The main information in a graphNEL is, of course, the vector of nodes (character) and a list of edges. That information can for sure go into an igraph. Then there is the slot `renderInfo`, which afaIu is (or can be) used to control how the graph should be rendered when plotted e.g. on a 2D screen with Rgraphivz. The last big refactoring seems (according to svn blame) due to Seth Falcon, Nishant Gopalakrishnan and Florian Hahne in 2010/11. (The package has been worked on by a variety of of people over the years; e.g. my own involvement dates back to two bursts in 2004 and 07). It is hard to tell how much of the renderInfo functionality is used out there in the wild, but the fact that its code hasn’t been touched for 5 years is consistent with assuming that interest in it is limited (otherwise there tend to be bug reports or requests for more functionality). Kapser and Florian are probably lurking on this list and waiting to make additional comments. In summary: I think your proposal is great, and you should go ahead. I expect the downsides, if any, to be miniscule. Hope this helps Wolfgang > On Feb 6, 2016, at 12:20 GMT+1, Thomas Lin Pedersen> wrote: > > I’m in the process of developing ggraph (https://github.com/thomasp85/ggraph) > - An extensive plotting framework for graph/tree/network data based on > ggplot2. Currently the class support is focused on igraph and dendrogram, but > the idea is to extend it with support for additional graph representations in > R. The easy way to do this is through conversion to one of the two currently > supported classes, but I would like to hear from the developers and users of > especially the graph package, whether there are any downsides to this > approach, i.e. are there features/information captured by the graphNEL class > that would disappear with conversion to an igraph object. > > Also if someone is working with, or developing other graph representations > and would like to see support in ggraph, please let me know… > > best > > Thomas > [[alternative HTML version deleted]] > > ___ > Bioc-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/bioc-devel Wolfgang Huber Principal Investigator, EMBL Senior Scientist Genome Biology Unit European Molecular Biology Laboratory (EMBL) Heidelberg, Germany wolfgang.hu...@embl.de http://www.huber.embl.de ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
Re: [Bioc-devel] Classes to be supported by ggraph
>From my perspective Rgraphviz now has a quite good (cross-platform) access to the Graphviz layout routines. But how to actually use these routines from R is certainly something I think could be vastly improved upon. Right now, Rgraphviz basically has two different interfaces to graph layout and graph rendering - the "really, really old" interface and the "only old" interface. As you may sense I don't have strong feelings about the R interface to Rgraphviz, except that I would be very open to someone improving on it. I don't have the time to do that myself. Basically what I do right now is maintain the C interface, since I have spent so much time hacking on it. But the R interface needs a lot of love. I think it would be a shame to not continue to have access to the Graphviz library from R given that it now works and it is extremely widely used. For the ggraph package I think it would be worthwhile to also be able to use the layout routines in (R)Graphviz, and I don't see why we would not be able to plug into it. How to display a general graph can get pretty burdensome wrt. arguments. One of the original ideas in Rgraphviz was that a use would be able to put a full R plot (say a scatterplot or histogram) inside each node. Best, Kasper On Sat, Feb 6, 2016 at 4:16 PM, Wolfgang Huberwrote: > Dear Thomas > > thank you for asking about this. > > The main information in a graphNEL is, of course, the vector of nodes > (character) and a list of edges. That information can for sure go into an > igraph. > > Then there is the slot `renderInfo`, which afaIu is (or can be) used to > control how the graph should be rendered when plotted e.g. on a 2D screen > with Rgraphivz. The last big refactoring seems (according to svn blame) due > to Seth Falcon, Nishant Gopalakrishnan and Florian Hahne in 2010/11. (The > package has been worked on by a variety of of people over the years; e.g. > my own involvement dates back to two bursts in 2004 and 07). > > It is hard to tell how much of the renderInfo functionality is used out > there in the wild, but the fact that its code hasn’t been touched for 5 > years is consistent with assuming that interest in it is limited (otherwise > there tend to be bug reports or requests for more functionality). > > Kapser and Florian are probably lurking on this list and waiting to make > additional comments. > > In summary: I think your proposal is great, and you should go ahead. I > expect the downsides, if any, to be miniscule. > > Hope this helps > Wolfgang > > > > On Feb 6, 2016, at 12:20 GMT+1, Thomas Lin Pedersen > wrote: > > > > I’m in the process of developing ggraph ( > https://github.com/thomasp85/ggraph) - An extensive plotting framework > for graph/tree/network data based on ggplot2. Currently the class support > is focused on igraph and dendrogram, but the idea is to extend it with > support for additional graph representations in R. The easy way to do this > is through conversion to one of the two currently supported classes, but I > would like to hear from the developers and users of especially the graph > package, whether there are any downsides to this approach, i.e. are there > features/information captured by the graphNEL class that would disappear > with conversion to an igraph object. > > > > Also if someone is working with, or developing other graph > representations and would like to see support in ggraph, please let me know… > > > > best > > > > Thomas > > [[alternative HTML version deleted]] > > > > ___ > > Bioc-devel@r-project.org mailing list > > https://stat.ethz.ch/mailman/listinfo/bioc-devel > > > > Wolfgang Huber > Principal Investigator, EMBL Senior Scientist > Genome Biology Unit > European Molecular Biology Laboratory (EMBL) > Heidelberg, Germany > > wolfgang.hu...@embl.de > http://www.huber.embl.de > > ___ > Bioc-devel@r-project.org mailing list > https://stat.ethz.ch/mailman/listinfo/bioc-devel > [[alternative HTML version deleted]] ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel
[Bioc-devel] Classes to be supported by ggraph
I’m in the process of developing ggraph (https://github.com/thomasp85/ggraph) - An extensive plotting framework for graph/tree/network data based on ggplot2. Currently the class support is focused on igraph and dendrogram, but the idea is to extend it with support for additional graph representations in R. The easy way to do this is through conversion to one of the two currently supported classes, but I would like to hear from the developers and users of especially the graph package, whether there are any downsides to this approach, i.e. are there features/information captured by the graphNEL class that would disappear with conversion to an igraph object. Also if someone is working with, or developing other graph representations and would like to see support in ggraph, please let me know… best Thomas [[alternative HTML version deleted]] ___ Bioc-devel@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/bioc-devel