visualizer
tit.plotting.nilearn.visualizer ¶
TI-Toolbox Visualization Module Provides comprehensive visualization tools for electric field distributions from TES simulations.
Features: 1. Multiple surface views (lateral, medial, left/right hemispheres) saved as high-res PDF 2. Interactive 3D visualization saved as HTML using plotly 3. Atlas contour overlays for anatomical context 4. Support for both subject-specific and MNI space visualizations
Based on: https://nilearn.github.io/dev/auto_examples/01_plotting/plot_3d_map_to_surface_projection.html
NilearnVisualizer ¶
NilearnVisualizer(subject_id: str | None = None)
Main visualization class for electric field distributions.
Provides methods for creating both static PDF visualizations and interactive HTML plots. Uses PathManager for consistent path handling and supports multiple atlas overlays.
Initialize the visualizer.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
subject_id
|
str | None
|
Subject ID (optional, will use PathManager detection if not provided) |
None
|
Source code in tit/plotting/nilearn/visualizer.py
create_pdf_visualization ¶
create_pdf_visualization(subject_id: str, simulation_name: str, min_cutoff: float = 0.3, max_cutoff: float = None, atlas_name: str = 'harvard_oxford_sub', selected_regions: list[int] | None = None) -> str | None
Create PDF visualization with multiple surface views and atlas contours.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
subject_id
|
str
|
Subject ID |
required |
simulation_name
|
str
|
Name of the simulation |
required |
min_cutoff
|
float
|
Minimum cutoff for visualization (V/m) |
0.3
|
max_cutoff
|
float
|
Maximum cutoff for visualization (V/m), if None uses 99.9th percentile |
None
|
atlas_name
|
str
|
Name of atlas to overlay |
'harvard_oxford_sub'
|
selected_regions
|
list[int] | None
|
List of region indices to include (0-indexed), if None includes all |
None
|
Returns:
| Type | Description |
|---|---|
str | None
|
Path to saved PDF file or None if failed |
Source code in tit/plotting/nilearn/visualizer.py
create_html_visualization ¶
create_html_visualization(subject_id: str, simulation_name: str, min_cutoff: float = 0.3) -> str | None
Create interactive HTML visualization.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
subject_id
|
str
|
Subject ID |
required |
simulation_name
|
str
|
Name of the simulation |
required |
min_cutoff
|
float
|
Minimum cutoff for visualization (V/m) |
0.3
|
Returns:
| Type | Description |
|---|---|
str | None
|
Path to saved HTML file or None if failed |
Source code in tit/plotting/nilearn/visualizer.py
create_pdf_visualization_group ¶
create_pdf_visualization_group(averaged_img, base_filename: str, output_dir: str, min_cutoff: float = 0.3, max_cutoff: float = None, atlas_name: str = 'harvard_oxford_sub', selected_regions: list[int] | None = None) -> str | None
Create PDF visualization with pre-averaged nifti data.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
averaged_img
|
Pre-averaged nibabel Nifti1Image |
required | |
base_filename
|
str
|
Base filename for output (without extension) |
required |
output_dir
|
str
|
Output directory path |
required |
min_cutoff
|
float
|
Minimum cutoff for visualization (V/m) |
0.3
|
max_cutoff
|
float
|
Maximum cutoff for visualization (V/m), if None uses 99.9th percentile |
None
|
atlas_name
|
str
|
Name of atlas to overlay |
'harvard_oxford_sub'
|
selected_regions
|
list[int] | None
|
List of region indices to include (0-indexed), if None includes all |
None
|
Returns:
| Type | Description |
|---|---|
str | None
|
Path to saved PDF file or None if failed |
Source code in tit/plotting/nilearn/visualizer.py
create_glass_brain_visualization ¶
create_glass_brain_visualization(subject_id: str, simulation_name: str, min_cutoff: float = 0.3, max_cutoff: float = None, cmap: str = 'hot') -> str | None
Create glass brain visualization using nilearn's plot_glass_brain.
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
subject_id
|
str
|
Subject ID |
required |
simulation_name
|
str
|
Name of the simulation |
required |
min_cutoff
|
float
|
Minimum cutoff for visualization (V/m) |
0.3
|
max_cutoff
|
float
|
Maximum cutoff for visualization (V/m), if None uses 99.9th percentile |
None
|
cmap
|
str
|
Colormap name for visualization |
'hot'
|
Returns:
| Type | Description |
|---|---|
str | None
|
Path to saved PNG file or None if failed |
Source code in tit/plotting/nilearn/visualizer.py
507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 | |