Skip to content

Commit 5bac82e

Browse files
committed
Merge branch 'master' of https://github.com/NeuralEnsemble/python-neo into spikegadgets_implementation
2 parents faabc78 + 78f3f33 commit 5bac82e

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

80 files changed

+4549
-9750
lines changed

doc/source/authors.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ and may not be the current affiliation of a contributor.
5555
* Peter N Steinmetz [22]
5656
* Shashwat Sridhar
5757
* Alessio Buccino [23]
58+
* Regimantas Jurkus [13]
5859

5960
1. Centre de Recherche en Neuroscience de Lyon, CNRS UMR5292 - INSERM U1028 - Universite Claude Bernard Lyon 1
6061
2. Unité de Neuroscience, Information et Complexité, CNRS UPR 3293, Gif-sur-Yvette, France

doc/source/core.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,7 @@ Relationship:
191191

192192
:download:`Click here for a better quality SVG diagram <./images/simple_generated_diagram.svg>`
193193

194-
.. note:: This figure has not yet been updated to include :class:`ImageSequence` and :class:`RegionOfInterest`.
194+
.. note:: This figure do not include :class:`ChannelView` and :class:`RegionOfInterest`.
195195

196196
For more details, see the :doc:`api_reference`.
197197

doc/source/developers_guide.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ Requirements
4545
* Sphinx_ (for building documentation)
4646
* (optional) coverage_ >= 2.85 (for measuring test coverage)
4747
* (optional) scipy >= 0.12 (for MatlabIO)
48-
* (optional) h5py >= 2.5 (for KwikIO, NeoHdf5IO)
48+
* (optional) h5py >= 2.5 (for KwikIO)
4949
* (optional) nixio (for NixIO)
5050
* (optional) pillow (for TiffIO)
5151

doc/source/images/generate_diagram.py

Lines changed: 27 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,6 @@ def get_rect_height(name, obj):
2929
nlines += len(getattr(obj, '_all_attrs', []))
3030
nlines += len(getattr(obj, '_single_child_objects', []))
3131
nlines += len(getattr(obj, '_multi_child_objects', []))
32-
nlines += len(getattr(obj, '_multi_parent_objects', []))
3332
return nlines * line_heigth
3433

3534

@@ -58,7 +57,7 @@ def calc_coordinates(pos, height):
5857
return pos[0], y
5958

6059

61-
def generate_diagram(filename, rect_pos, rect_width, figsize):
60+
def generate_diagram(rect_pos, rect_width, figsize):
6261
rw = rect_width
6362

6463
fig = pyplot.figure(figsize=figsize)
@@ -67,7 +66,7 @@ def generate_diagram(filename, rect_pos, rect_width, figsize):
6766
all_h = {}
6867
objs = {}
6968
for name in rect_pos:
70-
objs[name] = fake_neo(name)
69+
objs[name] = fake_neo(name, cascade=False)
7170
all_h[name] = get_rect_height(name, objs[name])
7271

7372
# draw connections
@@ -81,6 +80,8 @@ def generate_diagram(filename, rect_pos, rect_width, figsize):
8180

8281
for r in range(3):
8382
for ch_name in relationships[r]:
83+
if ch_name not in rect_pos:
84+
continue
8485
x1, y1 = calc_coordinates(rect_pos[ch_name], all_h[ch_name])
8586
x2, y2 = calc_coordinates(pos, all_h[name])
8687

@@ -100,8 +101,7 @@ def generate_diagram(filename, rect_pos, rect_width, figsize):
100101
for name, pos in rect_pos.items():
101102
htotal = all_h[name]
102103
obj = objs[name]
103-
allrelationship = (list(getattr(obj, '_child_containers', []))
104-
+ list(getattr(obj, '_multi_parent_containers', [])))
104+
allrelationship = list(getattr(obj, '_child_containers', []))
105105

106106
rect = Rectangle(pos, rect_width, htotal,
107107
facecolor='w', edgecolor='k', linewidth=2.)
@@ -123,8 +123,7 @@ def generate_diagram(filename, rect_pos, rect_width, figsize):
123123
ax.add_patch(rect)
124124

125125
# multi relationship
126-
relationship = (list(getattr(obj, '_multi_child_objects', []))
127-
+ list(getattr(obj, '_multi_parent_containers', [])))
126+
relationship = list(getattr(obj, '_multi_child_objects', []))
128127
pos2 = (pos[1] + htotal - line_heigth * (1.5 + len(relationship))
129128
- rect_height)
130129
rect_height = len(relationship) * line_heigth
@@ -196,28 +195,38 @@ def generate_diagram(filename, rect_pos, rect_width, figsize):
196195

197196
ax.set_xticks([])
198197
ax.set_yticks([])
199-
fig.savefig(filename, dpi=dpi)
198+
199+
return fig
200200

201201

202202
def generate_diagram_simple():
203203
figsize = (18, 12)
204204
rw = rect_width = 3.
205205
bf = blank_fact = 1.2
206-
rect_pos = {'Block': (.5 + rw * bf * 0, 4),
206+
rect_pos = {
207+
# col 0
208+
'Block': (.5 + rw * bf * 0, 4),
209+
# col 1
207210
'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
208222
'Event': (.5 + rw * bf * 4, 3.0),
209223
'Epoch': (.5 + rw * bf * 4, 1.0),
210-
'Group': (.5 + rw * bf * 1, 7.5),
211-
'ChannelView': (.5 + rw * bf * 2., 9.9),
212-
'SpikeTrain': (.5 + rw * bf * 3, 7.5),
213-
'IrregularlySampledSignal': (.5 + rw * bf * 3, 0.5),
214-
'AnalogSignal': (.5 + rw * bf * 3, 4.9),
224+
215225
}
216226
# todo: add ImageSequence, RegionOfInterest
217-
generate_diagram('simple_generated_diagram.svg',
218-
rect_pos, rect_width, figsize)
219-
generate_diagram('simple_generated_diagram.png',
220-
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)
221230

222231

223232
if __name__ == '__main__':
37.2 KB
Loading

0 commit comments

Comments
 (0)