A lightweight package to plot brain surfaces with Python.
Project description
This is a Python package that plots data on cortical surface.
Installation
The package can be installed with pip:
pip install brainplotlib
Example usage
import numpy as np
from brainplotlib import brain_plot
## Generate some random data
# In this case it's icoorder3 resolution (642 vertices per hemisphere), and
# the non-cortical vertices have been masked out (588 and 587 remaining
# vertices for the left and right hemisphere, respectively).
rng = np.random.default_rng(0)
v = rng.random((1175, ))
img, scale = brain_plot(v, vmax=1, vmin=0, cmap='viridis', return_scale=True)
The rendered image is a NumPy array.
It can be rendered using matplotlib
:
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(img.shape[1] / 200, img.shape[0] / 200), dpi=200)
plt.imshow(img)
plt.axis('off')
cbar = plt.colorbar(scale, shrink=0.8, aspect=30)
plt.savefig('random_data_with_colorbar.png', bbox_inches='tight')
plt.show()
Alternatively, the high-resolution image can be saved directly using cv2
.
import cv2
cv2.imwrite(
'random_data.png',
np.round(img[:, :, [2, 1, 0]] * 255).astype(np.uint8))
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
brainplotlib-0.4.0.tar.gz
(8.2 MB
view hashes)
Built Distribution
Close
Hashes for brainplotlib-0.4.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | d52e92c76198f7965eb06631975a169d5e1a79e31079e638a434e9abe487815a |
|
MD5 | c7d2f3cf9650ea73a7cf0a6e06c5b113 |
|
BLAKE2b-256 | 76fc41f356aaec7a7c7c367544e000b638664af26b10f415740da573c865ff3b |