-
Notifications
You must be signed in to change notification settings - Fork 98
/
CHANGES
160 lines (133 loc) · 6.26 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
Changelog
=========
.. currentmodule:: surfer
Version 0.11.0
--------------
- Minimum Python version increased to 3.6
- Add support to turn off full-screen antialiasing, which can be problematic on
some drivers (e.g., MESA software rendering on Linux)
- Simplification and refactoring of vector-valued data plotting
- Removal of unnecessary ``info`` log messages about smoothing matrix and
colormap generation (changed to ``debug`` level)
- Clean up of exit functions like ``__del__`` to avoid segfaults
Version 0.10.0
--------------
- Added an option to smooth to nearest vertex in :meth:`Brain.add_data` using
``smoothing_steps='nearest'``
- Added options for using offscreen mode
- Improved integration with Jupyter notebook
- Avoided view changes when using :meth:`Brain.add_foci`
Version 0.9
-----------
- Fixed transparency issues with colormaps with
:meth:`Brain.scale_data_colormap`
- Added an example of using custom colors
- Added options for choosing units for :class:`Brain` (``m`` or ``mm``)
Version 0.8
-----------
- The surface geometry that is displayed can now be changed after initializing
a ``Brain`` instance with e.g. ``brain.set_surf("smoothwm")``.
- Allowed PySurfer to use custom matplotlib colormap objects or the names of
custom colormaps that have been registered with matplotlib.
- Added four new colormaps from ``seaborn``: ``rocket``, ``mako``, ``icefire``,
and ``vlag``.
- Terrain interaction is now possible via the ``interaction`` keyword argument.
- An API reference page is now available.
- Support is now provided for visualizing vector-valued (3 values per vertex)
data.
Version 0.7
-----------
- Support for Python 3.3 and up.
- A new ``alpha`` keyword to the ``Brain`` constructor now controls
opacity of the rendered brain surface.
- The ``curv`` keyword to the ``Brain`` constructor has been
deprecated. To replicate previous behavior when ``curv`` was set to
``True`` simply omit the ``curv`` keyword. To replicate previous
behavior when ``curv`` was set to ``False``, simply set the
``cortex`` keyword to None. To ease transition the ``curv`` argument
will still be caught and processed, but it will be removed in a
future release.
- The ``cortex`` keyword to the ``Brain`` constructor now also accepts
a valid color specification (such as a 3-tuple with RGB values or a
color name) to render the cortical surface in that color without
rendering binary curvature values. Additionally it now also accepts
a dictionary with keyword arguments that are passed on to the call
to ``mlab.pipeline.surface``.
- ``Brain.save_movie`` now uses the ``imageio`` library, eliminating the need
to manually install ``ffmpeg``. ``imageio`` has been added as an optional
dependency which can be installed with
``$ pip install pysurfer[save_movie]``.
- ``Brain.save_image`` now has the option to save with alpha channel and
antialiasing.
Version 0.6
-----------
- Values that were previously selected using a ``config_opts``
dictionary in the ``Brain`` constructor are now keyword arguments.
This should make it easier to use tab-completion in IPython, and will
generally simplify your scripts. To ease transition, a ``config_opts``
argument will still be caught, and its entries will be used (overriding
the keyword arguments), but it will be removed in a future release.
- The ability to set default values in a config file has been removed.
While convenient, this approach encourages code that is not fully
reproducible. While existing code that was written expecting a config
file will still run, the visualization will fall back to default values.
These should be updated directly in your plotting scripts.
- Figure size is now specified only through the ``size`` keyword argument
of :class:`Brain`. To make a rectangular window, pass a ``(width, height)``
tuple. Passing a single value to ``size`` will still make a square window.
- The ``cortex`` keyword argument can now be a mayavi colormap name or
a ``(colormap, min, max, reverse)`` tuple for full control.
- Morphometry plotting was made more flexible with the ability to pass
a specific colormap and anchor points for that colormap. Additionally,
the default anchor points now use robust statistics to give better
values.
- Contour overlay plotting was made more flexible by adding keyword arguments
to control whether a colorbar should be shown and whether existing contour
overlays should be removed before plotting.
Version 0.5
-----------
- Added control over the width of outlines when plotting the borders of
annotations or labels.
- The visual display of the surfaces was improved by using surface normals.
- Made colormap specification in Brain.add_data and Brain.add_contour_overlay
more flexible, with better defaults.
- Brain.save_montage() can now produce 2d grids of views in addition to
horizontal and vertical arrangements.
- Fixed some installation issues and added explicit checks for dependencies
on install.
- Updated the installation docs with information about getting PySurfer
running on OSX, and changed the official environment recommendation to
Anaconda.
Version 0.4
-----------
Enhancements
~~~~~~~~~~~~
- Display data from both hemispheres simultaneously
- Display multiple views simultaneously
- Toggling Mayavi toolbars
- Use nibabel for IO functions
Version 0.3.1
-------------
Fixes
~~~~~
- Reverted change in io.py that broke Python 2.6 compatibility
- Updated traitsui import while keeping backgrounds compatibility
Version 0.3
-----------
Enhancements
~~~~~~~~~~~~
- TimeViewer GUI to control data exploration in the time dimension
- Support for reading and visualizing MEG data from MNE
- Function to project volume-based data using mri_vol2surf
- Label routines can read scalar data and threshold visualization
- Utility function to smooth overlay data along the cortical manifold
- Example for displaying parcellation-based ROI analysis results
- Example for displaying ROI labels
- Example for plotting probabilistic labels
- Improved color flexibility using matplotlib for many visualization modes
- Exposed alpha channel for many visualization modes
Fixes
~~~~~
- Big-endian overlay data should now display properly on 64-bit systems.
- Colorbar text displays properly on light backgrounds
- Lights are oriented depending on hemisphere so surfaces are equally lit