1
3 '''
4 Layout data associated to a tree node.
5 '''
6 pass
7
9 '''
10 Description of a phylogenetic tree layout
11
12 @see:
13 '''
16
19
21 return key in self[node]
22
24 return self[node].get(key,default)
25
27 '''
28
29 @param color:
30 @type color:
31 @param predicat:
32 @type predicat:
33 '''
34 for node in self:
35 if callable(predicat):
36 change = predicat(node)
37 else:
38 change = predicat
39
40 if change:
41 if callable(color):
42 c = color(node)
43 else:
44 c = color
45 self.setAttribute(node, 'color', color)
46
48 for node in self:
49 if callable(iscircularpredicat):
50 change = iscircularpredicat(node)
51 else:
52 change = iscircularpredicat
53
54 if change:
55 self.setAttribute(node, 'shape', 'circle')
56 else:
57 self.setAttribute(node, 'shape', 'square')
58
60 for node in self:
61 if callable(predicat):
62 change = predicat(node)
63 else:
64 change = predicat
65
66 if change:
67 if callable(radius):
68 r = radius(node)
69 else:
70 r = radius
71 self.setAttribute(node, 'radius', r)
72
74 def isInfoEqual(node):
75 data = node._info
76 return data is not None and info in data and data[info]==value
77
78 return isInfoEqual
79
81 return node._isterminal
82
84 def colorMaker(node):
85 return color
86
87 return colorMaker
88
90 def colorMaker(node):
91 return color
92
93 return colorMaker
94
96 def notpred(x):
97 return not predicat(x)
98 return notpred
99