visualization.umap
logger_config
logger
umap_embedding
def umap_embedding(config: dict, num_points: int = 30_000) -> xr.Dataset
Perform UMAP embedding for a sample of the entire project.
Parameters
- config (
dict): Configuration parameters. - num_points (
int): Number of points to use for UMAP embedding. Default is 30,000. 
Returns
xr.Dataset: UMAP embedding and accompanying data for the sampled indices.
umap_vis_matplotlib
def umap_vis_matplotlib(embed: np.ndarray,
                        num_points: int = 30_000,
                        labels: Optional[np.ndarray] = None,
                        title: Optional[str] = None,
                        show_legend: bool = True,
                        label_type: str = "none") -> Figure
Visualize UMAP embedding.
Parameters
- embed (
np.ndarray): UMAP embedding. - num_points (
int): Number of data points to visualize. Default is 30,000. - labels (
np.ndarray, optional): Motif or community labels. Default is None. - title (
str, optional): Title for the plot. Default is None. - show_legend (
bool, optional): Whether to show legend for labeled plots. Default is True. - label_type (
str, optional): Type of labels ('none', 'motif', 'community'). Default is 'none'. 
Returns
Figure: Matplotlib figure object.
umap_vis_plotly
def umap_vis_plotly(embed: np.ndarray,
                    labels_motif: Optional[np.ndarray] = None,
                    labels_community: Optional[np.ndarray] = None,
                    session_names: Optional[list] = None,
                    num_points: int = 30_000,
                    title: str = "UMAP",
                    marker_size: float = 3.5,
                    marker_opacity: float = 0.7) -> go.Figure
Create an interactive Plotly UMAP scatter with dropdown to select labels:
- None: grey points
 - Motif: colored by motif labels
 - Community: colored by community labels
 - Session: colored by session labels
 
Parameters
- embed (
np.ndarray): 2D UMAP embedding array of shape (N,2). - labels_motif (
np.ndarray or None): 1D motif labels of length N. - labels_community (
np.ndarray or None): 1D community labels of length N. - session_names (
list or None): List of session names for each point. - num_points (
int): Maximum number of points to show. - title (
str): Title for the figure. Defaults to "UMAP". - marker_size (
float): Size of the markers in the plot. - marker_opacity (
float): Opacity of the markers in the plot. 
Returns
plotly.graph_objs.Figure: The interactive Plotly figure.
visualize_umap
def visualize_umap(config: dict,
                   num_points: int = 30_000,
                   save_to_file: bool = True,
                   show_figure: Literal["none", "matplotlib", "plotly",
                                        "all"] = "none",
                   save_logs: bool = True) -> None
Visualize UMAP embeddings based on configuration settings. Fills in the values in the "visualization_umap" key of the states.json file. Saves results files at:
- project_name/
- results/
- umap_embedding.nc
 
 - reports/
- umap/
- umap_<model>_<seg>-<n_clusters>.png (UMAP visualization without labels)
 - umap_<model>_<seg>-<n_clusters>_motif.png (UMAP visualization with motif labels)
 - umap_<model>_<seg>-<n_clusters>_community.png (UMAP visualization with community labels)
 - umap_<model>_<seg>-<n_clusters>_interactive.html (Interactive UMAP visualization)
 
 
 - umap/
 
 - results/
 
Parameters
- config (
dict): Configuration parameters. - num_points (
int, optional): Number of data points to visualize. Default is 30,000. - save_to_file (
bool, optional): Save the figure to file. Default is True. - show_figure (
Literal["none", "matplotlib", "plotly", "all"], optional): Show the figure. Default is "none". 
- "none": do not show
 - "matplotlib": show with matplotlib
 - "plotly": show with plotly
 - "all": show with both matplotlib and plotly
 
- save_logs (
bool, optional): Save logs. Default is True. 
Returns
None