@@ -57,7 +57,7 @@ def calc_coordinates(pos, height):
5757 return pos [0 ], y
5858
5959
60- def generate_diagram (filename , rect_pos , rect_width , figsize ):
60+ def generate_diagram (rect_pos , rect_width , figsize ):
6161 rw = rect_width
6262
6363 fig = pyplot .figure (figsize = figsize )
@@ -66,7 +66,7 @@ def generate_diagram(filename, rect_pos, rect_width, figsize):
6666 all_h = {}
6767 objs = {}
6868 for name in rect_pos :
69- objs [name ] = fake_neo (name )
69+ objs [name ] = fake_neo (name , cascade = False )
7070 all_h [name ] = get_rect_height (name , objs [name ])
7171
7272 # draw connections
@@ -80,6 +80,8 @@ def generate_diagram(filename, rect_pos, rect_width, figsize):
8080
8181 for r in range (3 ):
8282 for ch_name in relationships [r ]:
83+ if ch_name not in rect_pos :
84+ continue
8385 x1 , y1 = calc_coordinates (rect_pos [ch_name ], all_h [ch_name ])
8486 x2 , y2 = calc_coordinates (pos , all_h [name ])
8587
@@ -193,28 +195,38 @@ def generate_diagram(filename, rect_pos, rect_width, figsize):
193195
194196 ax .set_xticks ([])
195197 ax .set_yticks ([])
196- fig .savefig (filename , dpi = dpi )
198+
199+ return fig
197200
198201
199202def generate_diagram_simple ():
200203 figsize = (18 , 12 )
201204 rw = rect_width = 3.
202205 bf = blank_fact = 1.2
203- rect_pos = {'Block' : (.5 + rw * bf * 0 , 4 ),
206+ rect_pos = {
207+ # col 0
208+ 'Block' : (.5 + rw * bf * 0 , 4 ),
209+ # col 1
204210 'Segment' : (.5 + rw * bf * 1 , .5 ),
211+ 'Group' : (.5 + rw * bf * 1 , 6.5 ),
212+ # col 2 : not do for now too complicated with our object generator
213+ # 'ChannelView': (.5 + rw * bf * 2, 5),
214+
215+ # col 2.5
216+ 'ImageSequence' : (.5 + rw * bf * 2.5 , 3.0 ),
217+ 'SpikeTrain' : (.5 + rw * bf * 2.5 , 0.5 ),
218+ # col 3
219+ 'IrregularlySampledSignal' : (.5 + rw * bf * 3 , 9 ),
220+ 'AnalogSignal' : (.5 + rw * bf * 3 , 7. ),
221+ # col 3
205222 'Event' : (.5 + rw * bf * 4 , 3.0 ),
206223 'Epoch' : (.5 + rw * bf * 4 , 1.0 ),
207- 'Group' : (.5 + rw * bf * 1 , 7.5 ),
208- 'ChannelView' : (.5 + rw * bf * 2. , 9.9 ),
209- 'SpikeTrain' : (.5 + rw * bf * 3 , 7.5 ),
210- 'IrregularlySampledSignal' : (.5 + rw * bf * 3 , 0.5 ),
211- 'AnalogSignal' : (.5 + rw * bf * 3 , 4.9 ),
224+
212225 }
213226 # todo: add ImageSequence, RegionOfInterest
214- generate_diagram ('simple_generated_diagram.svg' ,
215- rect_pos , rect_width , figsize )
216- generate_diagram ('simple_generated_diagram.png' ,
217- rect_pos , rect_width , figsize )
227+ fig = generate_diagram (rect_pos , rect_width , figsize )
228+ fig .savefig ('simple_generated_diagram.png' , dpi = dpi )
229+ fig .savefig ('simple_generated_diagram.svg' , dpi = dpi )
218230
219231
220232if __name__ == '__main__' :
0 commit comments