Skip to content

Releases: nilearn/nilearn

0.10.4

09 Apr 09:15
4f47301
Compare
Choose a tag to compare

Released April 2024

HIGHLIGHTS

  • Use the appropriate HTML templates for nilearn.maskers.MultiNiftiMapsMasker and nilearn.maskers.MultiNiftiLabelsMasker reports that would lead to empty reports for MultiNiftiMapsMasker (#4310 by Rรฉmi Gau).

  • Fix color bar handling with color map with only 1 level (#4255 by Rรฉmi Gau).

  • Improve colorbar size and labels in mosaic display (#4284 by Rรฉmi Gau).

  • Remove unused **kwargs from nilearn.plotting.view_img and nilearn.plotting.plot_surf (#4270 by Rรฉmi Gau).

Fixes

  • Fix plotting of carpet plot due to a change in the coming version of matplolib (3.9.0) (#4279 by Rรฉmi Gau).

  • Fix errant warning when using stat_type in nilearn.glm.compute_contrast (#4257 by Eric Larson).

  • Fix when thresholding is applied to images by GLM reports (#4258 by Rรฉmi Gau).

  • Use the appropriate HTML templates for nilearn.maskers.MultiNiftiMapsMasker and nilearn.maskers.MultiNiftiLabelsMasker reports that would lead to empty reports for MultiNiftiMapsMasker (#4310 by Rรฉmi Gau).

  • Make masker report tables horizontally scrollable (#4308 by Rรฉmi Gau).-

  • Masker reports tables do not overlap with report image (#4308 by Rรฉmi Gau).

  • Fix color bar handling with color map with only 1 level (#4255 by Rรฉmi Gau).

  • Ensure that region_names_ can be generated by nilearn.maskers.NiftiSpheresMasker.transform_single_imgs for deterministic atlases that use floats or non-consecutive values as region_ids whether they include background in their labels or not (#4274 by Rรฉmi Gau).

  • Ensure that nilearn.interfaces.bids.save_glm_to_bids serializes numpy arrays to list used as GLM parameters before saving them to JSON (#4325 by Rรฉmi Gau).

  • Check that the view parameter in surface plotting functions is a pair of int or float when it is not a string (#4297 by Rรฉmi Gau).

  • Fix positions of the markers on the images on the sphere masker reports (#4285 by Rรฉmi Gau).

  • Fix cut position in nifti maps maskers to match displayed map maximum (#4304 by Rรฉmi Gau).

  • Make sure that nilearn.maskers.NiftiSpheresMasker reports displays properly when it contains only 1 sphere (#4269 by Rรฉmi Gau).

  • Miscellaneous fixes in GLM reports (only display FIR delay if FIR is used, display color bar โ€œZ scoreโ€ legendโ€ฆ) (#4266 by Rรฉmi Gau).

  • Fix minor typos in documentation (glossary and connectivity/parcellating) (#4343 by Florent Pollet).

  • Update minor information on the Code of Conduct page (#4318 and #4320 by Himanshu Aggarwal).

Enhancements

Changes

  • Throw warnings when passing parameters to surface plotting functions that are not used by the plotly engine (#4298 by Rรฉmi Gau).

  • Improve colorbar size and labels in mosaic display (#4284 by Rรฉmi Gau).

  • Change the colormap to gray for the background image in the nilearn.maskers.NiftiSpheresMasker (#4269 by Rรฉmi Gau).

  • Remove unused **kwargs from nilearn.plotting.view_img and nilearn.plotting.plot_surf (#4270 by Rรฉmi Gau).

  • Use red to blue color map in the GLM reports (#4266 by Rรฉmi Gau).

  • nilearn.maskers.NiftiSpheresMasker will throw warnings if the labels passed to it is not a list of str, or if the number of items in the list of labels does not match the number of regions in the label image (#4274 by Rรฉmi Gau).

  • Copy headers from user-specified image to the result of nilearn.image.math_img (#4337 by Himanshu Aggarwal).

  • Render the description of the templates, atlases and datasets of the nilearn.datasets as part of the documentation (#4232 by Rรฉmi Gau).

  • Render examples of GLM and masker reports as part of the documentation (#4267 and #4295 by Rรฉmi Gau).

  • HTML, CSS are now linted using prettier. (#4302, by Rรฉmi Gau).

List of pull requests

Read more

0.10.3

29 Jan 09:22
a950195
Compare
Choose a tag to compare

Released January 2024

HIGHLIGHTS

Warning

Support for python 3.7 has been dropped. We recommend moving to python >= 3.11.

Minimum supported versions of packages have been bumped up:

  • Numpy โ€“ v1.19.0
  • SciPy โ€“ v1.8.0
  • Scikit-learn โ€“ v1.0.0
  • Nibabel โ€“ v4.0.0
  • Pandas โ€“ v1.1.5
  • Joblib โ€“ v1.0.0

NEW

  • The temp_file_lifetime parameter of interactive plotsโ€™ open_in_browser method is deprecated and has no effect (#4180 by Jerome Dockes)..

Fixes

Enhancements

Read more

0.10.2

01 Oct 19:30
960589c
Compare
Choose a tag to compare

Released September 2023

HIGHLIGHTS

  • Volume plotting functions like plotting.plot_img now have an optional radiological parameter, defaulting to False. If True, this will invert the x-axis and L and R annotations to confirm to radiological conventional view..
  • Update Decoder objects to use the more efficient LogisticRegressionCV.
  • Add LassoCV as a new estimator option for Decoder objects
  • Add vmin and symmetric_cbar arguments to nilearn.plotting.plot_img_on_surf.
  • Improve contrasts allowing fixed effects on F contrasts
  • New experimental surface API to facilitate working with surface data in downstream surface-based analyses. We provide this API as a nilearn.experimental.surface module as it is still incomplete and subject to change without a deprecation cycle..

NEW

  • Volume plotting functions like plotting.plot_img now have an optional radiological parameter, defaulting to False. If True, this will invert the x-axis and L and R annotations to confirm to radiological conventional view..
  • New experimental surface API to facilitate working with surface data in downstream surface-based analyses. We provide this API as a nilearn.experimental.surface module as it is still incomplete and subject to change without a deprecation cycle..

Fixes

  • Fix bug in method transform_imgs of maskers.MultiNiftiMapsMasker and maskers.MultiNiftiLabelsMasker that would raise an error if a list of sample_mask was specified to fit_transform.
  • Fix bug in nilearn.plotting.surf_plotting._plot_surf_matplotlib that would make vertices transparent when saving in PDF or SVG format.
  • Fix bug that would prevent using symmetric_cmap=True or the avg_method argument with plotting.plot_surf_roi.
  • Fixes a bug that would lead to an error when loading a fsaverage surface while relying on numpy >= 1.24.x.
  • Fix bug that would prevent loading the confounds of a gifti file in actual fmriprep datasets.
  • Fix bug that prevented using dataframes as input for second level GLM when computing contrasts.
  • Fix bug in glm.first_level.first_level_from_bids that returned no confound files if the corresponding bold files contained derivatives BIDS entities.
  • Fix bug in glm.first_level.first_level_from_bids that would throw a warning about slice_time_ref not being provided even when it was.
  • Fix bug where the cv_params_ attribute of fitter Decoder objects sometimes had missing entries if grid_param is a sequence of dicts with different keys.
  • Make the nilearn.interfaces.fmriprep.load_confounds confounds file selection more generic.
  • Change default figure sizes to prevent titles from overlapping figure content
  • Relax the nilearn.interfaces.fmriprep.load_confounds confounds selection on cosine as not all confound files contained the variables.
  • Fix pathlib.Path not being counted as Niimg-like object in image.new_img_like.
  • Fix fit_transform behavior to match when fit method is passed image data
  • Allow using both vmin and threshold with "plotly" engine to be consistent with "matplotlib" behavior
  • Set edgecolors to be the same as facecolors in plotting.plot_surf_contours so that ROI contours are rendered clearly
  • Refactor deprecation of behavior of datasets.fetch_atlas_craddock_2012, datasets.fetch_atlas_smith_2009 and datasets.fetch_atlas_basc_multiscale_2015 fetchers including using API consistent maps key

Enhancements

  • Add cross-reference links to type definitions in public surface functions.
  • Update Decoder objects to use the more efficient LogisticRegressionCV.
  • Throw warning in glm.first_level.first_level_from_bids when using event.tsv files with no trial type column.
  • Make return key names in the description file of destrieux surface consistent with datasets.fetch_atlas_surf_destrieux.
  • Add LassoCV as a new estimator option for Decoder objects
  • Add vmin and symmetric_cbar arguments to nilearn.plotting.plot_img_on_surf.
  • Improve generate_report method of maskers by allowing users to pass a cmap argument for plotting image
  • Improve contrasts allowing fixed effects on F contrasts

Changes

  • Validate the content of events files before plotting them.
  • nilearn.glm.first_level.experimental_paradigm.check_events will now throw a warning if some events have a 0 second duration and will throw an error if an event has NaN onset or duration.
  • Removed old files and test code from deprecated datasets COBRE and NYU resting state.
  • PEP8 and isort compliance extended to the whole nilearn codebase..
  • Finish applying black formatting to most of the codebase..
  • Empty region signals resulting from applying mask_img in maskers.NiftiLabelsMasker will no longer be kept in release 0.15. Meanwhile, use keep_masked_labels parameter when initializing the maskers.NiftiLabelsMasker object to enable/disable this behavior..
  • Empty region signals resulting from applying mask_img in maskers.NiftiMapsMasker will no longer be kept in release 0.15. Meanwhile, use keep_masked_maps parameter when initializing the maskers.NiftiMapsMasker object to enable/disable this behavior..
  • Removed mention of license in "header".
  • Configure plots in example gallery for better rendering
  • Make one_mesh_info and full_brain_info into private functions _one_mesh_info and _full_brain_info
  • Refactor error raising tests using context managers
  • Added warning to deprecate darkness in surf_plotting._compute_facecolors_matplotlib and html_surface._get_vertexcolor
  • Replace skipped doctests with default code-blocks
  • Move the ~nilearn.plotting.html_surface._mix_colormaps to cm.py in nilearn.plotting
  • Remove deprecation decorator from ~nilearn.glm.regression
  • Expose standardize in plotting.plot_carpet and connectome.ConnectivityMeasure to handle "zscore" deprecation.
  • Example :ref:sphx_glr_auto_examples_01_plotting_plot_prob_atlas.py is shortened to speed up build time

List of pull requests

  • Post release 0.10.1 by @ymzayek in #3730
  • [MAINT] Format nilearn/plotting: apply isort and fix flake8 errors by @Remi-Gau in #3648
  • [BOT] update pre-commit hooks by @github-actions in #3731
  • [BOT] update pre-commit hooks by @github-actions in #3734
  • [FIX] Missing values in Decoder.cv_params_ when param_grid is a list of dicts with different keys by @michellewang in #3733
  • Correcting typo in the "load_confounds_strategy" function ("scrubbing") by @jonasmago in #3738
  • [DOC] Fix broken doc build by @ymzayek in #3744
  • [MAINT] Clean up remaining files from deprecated datasets (cobre, nyu) by @michellewang in #3743
  • [ENH] Use LogisticRegressionCV instead of LogisticRegression to improve Decoder performance by @michellewang in #3736
  • [FIX] Fix tests failing due to deprecations in pre-release dependencies by @ymzayek in #3746
  • [INFRA] Add timeout setting in Azure Pipelines CI by @ymzayek in #3747
  • [BOT] update pre-commit hooks by @github-actions in #3748
  • add more info to adhd example by @mtorabi59 in #3739
  • [MAINT] improve test coverage BaseMasker by @Remi-Gau in #3721
  • [MAINT] refactor nilearn/maskers (sourcery, f-strings) by @Remi-Gau in #3685
  • [MAINT] avoid creating files during testing: test_infer_effect_maps by @Remi-Gau in #3716
  • [MAINT] Catch warnings as errors on partial doc builds by @ymzayek in #3749
  • [FIX] force ordered output of _sanitize_reorder to match regex in test by @Remi-Gau in #3751
  • [MAINT] run isort and flake8 on the whole nilearn code base in CI by @Remi-Gau in #3651
  • [FIX] find confounds even when BIDS derivatives bold files contain res or den entities by @Remi-Gau in #3742
  • [BOT] update pre-commit hooks by @github-actions in #3764
  • [DOC] update changelog and git blame ignore by @Remi-Gau in #3755
  • [FIX] Change error string to match scikit-learn InvalidParameterError message by @ymzayek in #3763
  • [MAINT] relax regex for warning on sanitize reorder error by @Remi-Gau in #3766
  • [DOC] fix duplicate entry in examples dropdown by @Remi-Gau in #3760
  • [MAINT] refactor nilearn/datasets (sourcery, f-strings) by @Remi-Gau in #3727
  • [MAINT] add workflow to check for f strings by @Remi-Gau in #3759
  • [DOC] Remove license and hide authors in examples by @Remi-Gau in #3765
  • [MAINT] refactor nilearn/plotting (f-strings) by @Remi-Gau in #3757
  • [MAINT] remove test install with python 2.7 workflow by @Remi-Gau in #3768
  • [REF] fix f strings by @Remi-Gau in #3770
  • [ENH][DOC] Fix inconsistent description of return keys for fetch_atlas_surf_destrieux by @tarunsamanta2k20 in https://git...
Read more

Release 0.10.1

28 Apr 09:19
3214944
Compare
Choose a tag to compare
Release 0.10.1 (#3724)

* update changelog version

* Fix some changelog entries

* Rename changelog file for release

* Add badges

* Add release month

* Remove dev tag in directives

* Fix sphinx docstring userwarning

* [full doc] Request full build

Release 0.10.1rc1

28 Feb 09:55
aa480ce
Compare
Choose a tag to compare
Release 0.10.1rc1 Pre-release
Pre-release
Pre-release 0.10.1rc1 (#3536)

* REL 0.10.1rc1

* Set version marker

* Modify changelog

Release 0.10.0

06 Jan 13:49
9c29e33
Compare
Choose a tag to compare
Release 0.10.0 (#3454)

Release 0.9.2

24 Aug 11:32
98a3ee0
Compare
Choose a tag to compare
Release 0.9.2 (#3348)

Release 0.9.1

13 Apr 13:12
9ddfa72
Compare
Choose a tag to compare
Release `0.9.1` (#3219)

* REL 0.9.1

* formatting

Release 0.9.0

28 Jan 17:36
72e810f
Compare
Choose a tag to compare
Release `0.9.0` (#3147)

* 0.8.2 -> 0.9.0

* add python 3.10 to setup.py

* add some recent contributors

* [circle full] reformat changelog for 0.9.0

* [circle full] add highlights and improve formatting for 0.9.0

* fix ref

* update news

* [circle full] bump version number

* update changelog for 0.9.0

* [circle full] clean latest changelog

Release 0.8.1

16 Sep 14:49
2fd6665
Compare
Choose a tag to compare
Release `0.8.1` (#2974)

* Update whats_new

* Update news

* Bump version number to 0.8.1

* [circle full] request full build