How Was This Go Hierarchical Map Generated?
1
0
Entering edit mode
12.9 years ago
Dejian ★ 1.3k

I saw this kind of GO map before. I wonder what tools can produce this kind of map. Hope it does not require much effort in programming.

gene • 2.0k views
ADD COMMENT
0
Entering edit mode

Please don't forget to accept the answer if it fits.

ADD REPLY
6
Entering edit mode
12.9 years ago

I would say it's graphviz-dot output: http://www.graphviz.org

It's a (simple) script oriented program so, there is no programming required. See the gallery: http://www.graphviz.org/Gallery.php

EDIT: The following XSLT stylesheet would transform the GeneOntology (in RDF/XML format) to an input for dot:


<xsl:stylesheet xmlns:xsl="&lt;a href="http://www.w3.org/1999/XSL/Transform" "="" rel="nofollow">http://www.w3.org/1999/XSL/Transform'
    xmlns:go="http://www.geneontology.org/dtds/go.dtd#"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
        version='1.0'
        >
<xsl:output method="text"/>

<xsl:template match="/">
<xsl:text>digraph G {</xsl:text>
<xsl:apply-templates select="/go:go/rdf:RDF/go:term[not(go:is_a/@rdf:resource='&lt;a href=" http:="" www.geneontology.org="" go#obsolete_molecular_function')"="" rel="nofollow">http://www.geneontology.org/go#obsolete_molecular_function')]"/>
<xsl:text>}</xsl:text>
</xsl:template>

<xsl:template match="go:term">
<xsl:variable name="acn" select="concat('go_',substring-after(go:accession,'GO:'))"/>
<xsl:value-of select="$acn"/>
<xsl:text>[label="</xsl:text>
<xsl:value-of select="go:accession"/>
<xsl:text>"];
</xsl:text>
<xsl:for-each select="go:is_a">
<xsl:value-of select="$acn"/>
<xsl:text> -> </xsl:text>
<xsl:value-of select="concat('go_',substring-after(@rdf:resource,'GO:'))"/>
<xsl:text>;
</xsl:text>
</xsl:for-each>

</xsl:template>

</xsl:stylesheet>

xsltproc go2dot.xsl go_as_rdf.xml > input.dot

(not tested: the whole GO database is taking too much time/memory for dot to compute, but you get the idea... )

ADD COMMENT
0
Entering edit mode

It really looks like dot indeed

ADD REPLY
0
Entering edit mode

I think the nodes in the GO map of the paper were automatically generated according to GO database. It seems to me that graphviz require manual definition of the nodes. The above-mentioned hirarchical GO map resembles the GO map of GO::TermFinder. http://smd.stanford.edu/help/GO-TermFinder/GO_TermFinder_help.shtml#pvalue.

ADD REPLY

Login before adding your answer.

Traffic: 2934 users visited in the last hour
Help About
FAQ
Access RSS
API
Stats

Use of this site constitutes acceptance of our User Agreement and Privacy Policy.

Powered by the version 2.3.6