We implemented the interface of TRONCO with other tools to support the Pipeline for Cancer Inference PiCnIc, our attempt at devise an effective pipeline to extract ensemble-level cancer progression models from cross-sectional data.
PiCnIc is versatile, modular and customizable and exploits state-of-the-art data processing and machine learning tools to:
The algorithms for cancer progression inference exploited by PicNiC are implemented within TRONCO, the other steps of the pipeline rely on dedicated tools (for clustering, drivers selection and exclusiviyt groups detection). The tools that PicNiC can exploit are of different nature, and we plan to interface them with TRONCO as far as our case studies are developed.
The current version of TRONCO supports input/output towards these tools:
export.nbs.input
, clustering outputs can be handled with
standard TRONCO functions.export.mutex
, and output results can be imported with
function import.mutex.groups
.Finally we also privede the possibility of exporting the inferred
model to graphML
format, which can be subsequently imported
to Cytoscape. We now provide an example of such function.
export.graphml(model.boot,
file = 'graph.gml',
fontsize = 12,
scale.nodes = .6,
height.logic = 0.25)
Follows an example of file generated by such function. Futhermore on the TRONCO website a Cytoscape style to visualize the progressions is available.
<?xml version="1.0" encoding="UTF-8"?>
<graphml xmlns="http://graphml.graphdrawing.org/xmlns"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://graphml.graphdrawing.org/xmlns
http://graphml.graphdrawing.org/xmlns/1.0/graphml.xsd">
<!-- Created by igraph -->
<key id="g_name" for="graph" attr.name="name" attr.type="string"/>
<key id="g_models" for="graph" attr.name="models" attr.type="string"/>
<key id="g_informations" for="graph" attr.name="informations" attr.type="string"/>
<key id="v_name" for="node" attr.name="name" attr.type="string"/>
<key id="v_label" for="node" attr.name="label" attr.type="string"/>
<key id="v_type" for="node" attr.name="type" attr.type="string"/>
<key id="v_fillcolor" for="node" attr.name="fillcolor" attr.type="string"/>
<key id="v_fontcolor" for="node" attr.name="fontcolor" attr.type="string"/>
<key id="v_bordercolor" for="node" attr.name="bordercolor" attr.type="string"/>
<key id="v_shape" for="node" attr.name="shape" attr.type="string"/>
<key id="v_width" for="node" attr.name="width" attr.type="double"/>
<key id="v_height" for="node" attr.name="height" attr.type="double"/>
<key id="v_fontsize" for="node" attr.name="fontsize" attr.type="double"/>
<key id="v_borderwidth" for="node" attr.name="borderwidth" attr.type="double"/>
<key id="e_weight" for="edge" attr.name="weight" attr.type="double"/>
<key id="e_line" for="edge" attr.name="line" attr.type="string"/>
<key id="e_arrow" for="edge" attr.name="arrow" attr.type="string"/>
<key id="e_color" for="edge" attr.name="color" attr.type="string"/>
<graph id="G" edgedefault="directed">
<data key="g_name">CAPRI - aCML</data>
<data key="g_models">CAPRI capri_bic - CAPRI capri_aic</data>
<data key="g_informations">Generated with TRONCO v2.3.0</data>
<node id="n0">
<data key="v_name">CSF3R</data>
<data key="v_label">CSF3R 4% (3)</data>
<data key="v_type">Nonsense point</data>
<data key="v_fillcolor">#FAB3D8</data>
<data key="v_fontcolor">#000000</data>
<data key="v_bordercolor">#000000</data>
<data key="v_shape">ellipse</data>
<data key="v_width">109.2</data>
<data key="v_height">72.8</data>
<data key="v_fontsize">18</data>
<data key="v_borderwidth">1</data>
</node>
[...]
<edge source="n1" target="n0">
<data key="e_weight">1</data>
<data key="e_line">Solid</data>
<data key="e_arrow">True</data>
<data key="e_color">#A9A9A9</data>
</edge>
[...]
</graph>
</graphml>