In [ ]:
%matplotlib inline
In [ ]:
# Let us use a Nifti file that is shipped with nilearn
from nilearn.datasets import MNI152_FILE_PATH
# Note that the variable MNI152_FILE_PATH is just a path to a Nifti file
print('Path to MNI152 template: %r' % MNI152_FILE_PATH)
In [ ]:
from nilearn import plotting
plotting.plot_img(MNI152_FILE_PATH)
This is not a very pretty plot. We just used the simplest possible
code. There is a whole section of the documentation <plotting>
on making prettier code.
Exercise: Try plotting one of your own files. In the above, MNI152_FILE_PATH is nothing more than a string with a path pointing to a nifti image. You can replace it with a string pointing to a file on your disk. Note that it should be a 3D volume, and not a 4D volume.
In [ ]:
from nilearn import image
smooth_anat_img = image.smooth_img(MNI152_FILE_PATH, fwhm=3)
# While we are giving a file name as input, the function returns
# an in-memory object:
print(smooth_anat_img)
This is an in-memory object. We can pass it to nilearn function, for instance to look at it
In [ ]:
plotting.plot_img(smooth_anat_img)
We could also pass it to the smoothing function
In [ ]:
more_smooth_anat_img = image.smooth_img(smooth_anat_img, fwhm=3)
plotting.plot_img(more_smooth_anat_img)
In [ ]:
more_smooth_anat_img.to_filename('more_smooth_anat_img.nii.gz')
Finally, calling plotting.show() is necessary to display the figure when running as a script outside IPython
In [ ]:
plotting.show()
|
To recap, all the nilearn tools can take data as filenames or in-memory objects, and return brain volumes as in-memory objects. These can be passed on to other nilearn tools, or saved to disk.