Thank you, I'll try this software.
Is there a way to parse pathways from KEGG database and represent the proteins in them as directed graphs?
I have tried doing this with visANT by entering the name of the proteins involved in the text box and querying for interactions among them. But I felt it was inadequate as I didn't get a directed graph. I also saw from the tutorials that visAnt requires a line by line syntax for making directed edges.
Can I use visANT for making the network without entering the edges line by line or are there any better software for doing the same?
8 answers
Yes, there is even a new plugin for Cytoscape + KEGG
It's young though, and I haven't tried it.
Wow, that looks nothing like I pasted in to the comment box. Go over to the Google group to read the release.
sure :) thank you very much!
Reactome also has a cytoscape plugin for their functional interaction network: http://wiki.reactome.org/index.php/Reactome_FI_Cytoscape_Plugin
Cytoscape is the most renown software for visualizing pathways, but it has too many open bugs for my taste.
Gephi gephi.org) is a really cool and new alternative to Cytoscape - allow for dynamic manipulation of the graph, among other things. Open source, and while still alpha, very powerful. They have a demo video somewhere on the site, be sure to check it out.
They also have an API to generate graphs in multiple formats, which would allow you to directly import your node / edge data.
The screenshots look cool...i'l try this one too and will add comments about it :)
Great and fasta tool.
Great and fast tool =)
wow +1 for Gephi , sounds promising.
We've been trying Gephi with the 3 GO ontologies (biological process, molecular function and subcellular location) and it's great :)
R / Bioconductor has 'annotation' packages that map between common identifiers and other useful entities, e.g., the KEGG.db package to manage KEGG ids and pathway names, and the org.Hs.eg.db package to manage H. sapiens annotations, including Entrez, KEGG, SYMBOL, GENENAME, etc. There is also a graph package to create and manipulate graphs, and various alternatives for visualization such as the Rgraphviz and RCytoscape packages. Here's a work flow that retrieves the MAPK and Wnt pathways, finds human Entrez gene ids associated with these pathways, translates the Entrez gene ids to gene symbols, then plots the result using Rgraphviz.
library(KEGG.db)
library(org.Hs.eg.db)
library(graph)
library(Rgraphviz) # Rgraphviz can be tricky to install, esp. on Windows
## KEGG pathways of interest
terms <- c("MAPK signaling pathway", "Wnt signaling pathway")
## map -- KEGG id links the KEGG and org.Hs.eg packages
name2id <- toTable(KEGGPATHNAME2ID[ terms ])
id2gene <- toTable(revmap(org.Hs.egPATH)[ name2id$path_id ])
id2gene$symbol <- # add gene SYMBOL for each Entrez id
unlist(mget(id2gene$gene_id, org.Hs.egSYMBOL))
path2gene <- merge(name2id, id2gene, by="path_id") # 'join'
## create a graphBAM instance
df <- with(path2gene,
data.frame(from=symbol, to=path_id, weight=1,
stringsAsFactors=FALSE))
gr <- graphBAM(df, edgemode="directed")
## create a (random) subgraph
set.seed(123L)
nodes <- c(sample(df$from, 25), unique(df$to))
subgr <- subGraph(nodes, gr)
## display
to <- unique(df$to) # 'to' nodes, ...
nodeAttrs <- # ...colored organge
list(fillcolor=structure(rep("orange", length(to)), names=to))
plot(subgr, # display; uses Rgraphviz
"fdp", # a graphviz layout
nodeAttrs=nodeAttrs, # node attributes
attrs=list( # default attributes
node=list(shape="ellipse", # nodes are ellipses...
width="2"), # ... wide enough to contain symbol ids
edge=list(arrowsize="0.75") # edges are not-too-large arrows
))
Maybe not for the faint of heart, but hopefully showing the possibilities. There are instructions for installing R and Bioconductor packages, and many additional packages, some of which (e.g., KEGGgraph) provide a different interface; RCytoscape is interesting because the graph can be assembled programmatically, and then manipulated in Cytoscape.
Whenever I see "not for the faint of heart" I know I'm heading down the right path.
You could also try to download the KEGG pathways in the GPML format used by WikiPathways and PathVisio from: http://www.pathvisio.org/wiki/PathVisioDownload (look for KEGG converted pathways). And to access these in Cytoscape using the Cytoscape plugin for PathVisio (at http://www.pathvisio.org/wiki/Cytoscape_plugin ). The conversion and manual curation may have helped to get the direction in the graphs better.
Another cool software is BioLayout Express 3d, which can make 3d representations of a network and has also been featured in a Nature Protocols cover a while ago.
For anyone stumbling on this page through google search, there is a graphite package on bioconductor which can be used to download pathways from the major databases and represent those pathways as networks.
http://www.bioconductor.org/packages/devel/bioc/html/graphite.html
Log in to answer this question.
Hi blenderous, then you finally could get the proteins and interactions from KEGG database? I'd like to know if you have done this, it's really interesting