Skip to content

Commit d282fbe

Browse files
authored
MRG, BUG: Pass kwargs (#8630)
* BUG: Pass kwargs * BUG: Allow add_foci to work for volumes
1 parent b3fd2f1 commit d282fbe

File tree

2 files changed

+15
-5
lines changed

2 files changed

+15
-5
lines changed

mne/viz/_brain/_brain.py

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2048,7 +2048,7 @@ def add_label(self, label, color=None, alpha=1, scalar_thresh=None,
20482048

20492049
def add_foci(self, coords, coords_as_verts=False, map_surface=None,
20502050
scale_factor=1, color="white", alpha=1, name=None,
2051-
hemi=None):
2051+
hemi=None, resolution=50):
20522052
"""Add spherical foci, possibly mapping to displayed surf.
20532053
20542054
The foci spheres can be displayed at the coordinates given, or
@@ -2078,9 +2078,11 @@ def add_foci(self, coords, coords_as_verts=False, map_surface=None,
20782078
If None, it is assumed to belong to the hemipshere being
20792079
shown. If two hemispheres are being shown, an error will
20802080
be thrown.
2081+
resolution : int
2082+
The resolution of the spheres.
20812083
"""
20822084
from matplotlib.colors import colorConverter
2083-
hemi = self._check_hemi(hemi)
2085+
hemi = self._check_hemi(hemi, extras=['vol'])
20842086

20852087
# those parameters are not supported yet, only None is allowed
20862088
_check_option('map_surface', map_surface, [None])
@@ -2099,7 +2101,7 @@ def add_foci(self, coords, coords_as_verts=False, map_surface=None,
20992101
self._renderer.subplot(ri, ci)
21002102
self._renderer.sphere(center=coords, color=color,
21012103
scale=(10. * scale_factor),
2102-
opacity=alpha)
2104+
opacity=alpha, resolution=resolution)
21032105
self._renderer.set_camera(**views_dicts[hemi][v])
21042106

21052107
def add_text(self, x, y, text, name=None, color=None, opacity=1.0,
@@ -2713,7 +2715,7 @@ def _save_movie(self, filename, time_dilation=4., tmin=None, tmax=None,
27132715
kwargs['codec'] = codec
27142716
if bitrate is not None:
27152717
kwargs['bitrate'] = bitrate
2716-
imageio.mimwrite(filename, images)
2718+
imageio.mimwrite(filename, images, **kwargs)
27172719

27182720
@fill_doc
27192721
def save_movie(self, filename, time_dilation=4., tmin=None, tmax=None,

mne/viz/_brain/tests/test_brain.py

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -337,9 +337,14 @@ def test_brain_save_movie(tmpdir, renderer, brain_gc):
337337
brain._renderer.plotter.enable()
338338
else:
339339
brain._renderer.plotter.disable()
340-
brain.save_movie(filename, time_dilation=1,
340+
with pytest.raises(TypeError, match='unexpected keyword argument'):
341+
brain.save_movie(filename, time_dilation=1, tmin=1, tmax=1.1,
342+
bad_name='blah')
343+
assert not path.isfile(filename)
344+
brain.save_movie(filename, time_dilation=0.1,
341345
interpolation='nearest')
342346
assert path.isfile(filename)
347+
os.remove(filename)
343348
brain.close()
344349

345350

@@ -427,6 +432,9 @@ def test_brain_traces(renderer_interactive, hemi, src, tmpdir,
427432
assert hasattr(brain, "_spheres")
428433
assert brain.plotter.scalar_bar.GetNumberOfLabels() == 3
429434

435+
# add foci should work for volumes
436+
brain.add_foci([[0, 0, 0]], hemi='lh' if src == 'surface' else 'vol')
437+
430438
# test points picked by default
431439
picked_points = brain.get_picked_points()
432440
spheres = brain._spheres

0 commit comments

Comments
 (0)