예제 #1
0
    def to_printable_graph(self, enrichment, graph):
        viz_graph = DiGraph()
        viz_graph.attrs["defaultnodesize"] = "labelsize"
        viz_graph.attrs["label"] = str(enrichment)

        entry_labels = {}

        for entry in enrichment.entries:
            if entry.p_value < self.min_p:
                self.min_p = entry.p_value
            if entry.p_value > self.max_p:
                self.max_p = entry.p_value

        for entry in enrichment.entries:
            new_label = self.entry_to_label(entry)
            viz_graph.add_node(new_label, self.to_printable_data(entry))
            entry_labels[entry.id] = new_label

        for label, node in graph.nodes.items():
            if label not in entry_labels:
                new_label = self.term_to_label(node.data)
                viz_graph.add_node(new_label,
                                   self.term_to_printable(node.data))
                entry_labels[label] = new_label

        for label, u in graph.nodes.items():
            for edge in u.succ:
                viz_graph.add_edge(entry_labels[label],
                                   entry_labels[edge.to_node.label])

        return viz_graph
예제 #2
0
 def __init__(self):
     DiGraph.__init__(self)
     self.typedefs = {}
     self.synonyms = {}
     #        self.alt_ids = defaultdict(set)
     self.alt_ids = {}
     self.namespace = {}
예제 #3
0
    def __init__(self):
        DiGraph.__init__(self)
        self.typedefs = {}
        self.synonyms = {}
#        self.alt_ids = defaultdict(set)
        self.alt_ids = {}
        self.namespace = {}
예제 #4
0
 def to_printable_graph(self, enrichment, graph):
     viz_graph = DiGraph()
     viz_graph.attrs["defaultnodesize"] = "labelsize"
     viz_graph.attrs["label"] = str(enrichment)
     
     entry_labels = {}
     
     for entry in enrichment.entries:
         if entry.p_value < self.min_p:
             self.min_p = entry.p_value
         if entry.p_value > self.max_p:
             self.max_p = entry.p_value
     
     for entry in enrichment.entries:
         new_label = self.entry_to_label(entry)
         viz_graph.add_node(new_label, self.to_printable_data(entry))
         entry_labels[entry.id] = new_label
     
     for label, node in graph.nodes.items():
         if label not in entry_labels:
             new_label = self.term_to_label(node.data)
             viz_graph.add_node(new_label, self.term_to_printable(node.data))
             entry_labels[label] = new_label
     
     for label, u in graph.nodes.items():
         for edge in u.succ:
             viz_graph.add_edge(entry_labels[label], entry_labels[edge.to_node.label])
     
     return viz_graph