cautrigger.utils.pert_plot_stream#
- cautrigger.utils.pert_plot_stream(adata_TF, adata_down, model, pert_Gene, pert_celltype, run_suggest_mass_thresholds, fold, state_obs, dot_size=None, scale=0.1, min_mass=0.008, save_dir=None, embedding_name='X_tsne', n_neighbors=None, n_grid=40, palette=None, direction=None)#
Perform in silico perturbation and visualize the resulting streamlines (trajectories) to show cell state transitions. This is generally same to the vector field map but change vectors to streamlines. The method of drawing vector field map is borrowed from method CellOracle [KLZ+23].
- Parameters:
adata_TF [AnnData]: Annotated data object containing transcription factor expression data.
adata_down [AnnData]: Annotated data object for downstream analysis with embedding coordinates.
model [torch.nn.Module]: Trained CAUTrigger model with eval() and get_model_output() methods.
pert_Gene [list of str]: List of features to be perturbed.
pert_celltype [list of str]: List of cell types that will receive the perturbation.
- run_suggest_mass_thresholds [bool]: Whether to run suggested mass threshold selection.
Must be set to True initially to determine an appropriate ‘min_mass’.
fold [list of float]: Multiplication factors for each perturbed feature; length must match pert_Gene.
state_obs [str]: Column name in adata_TF.obs representing cell states/types.
dot_size [float, optional]: Size of dots in the plot. Defaults to scanpy’s default if None.
scale [float]: Scaling factor for vector arrows. Larger values result in smaller arrows. Default is 0.1.
- min_mass [float]: Threshold for filtering low-density grid points. Use ‘run_suggest_mass_thresholds=True’
first to determine an appropriate value. Default is 0.008.
save_dir [str, optional]: Directory path to save plots. No saving occurs if None. Default is None.
embedding_name [str]: Key for embedding coordinates in adata_down.obsm. Default is ‘X_tsne’.
- n_neighbors [int, optional]: Number of neighbors for vector field calculation. If None, defaults to
int(adata.shape[0] / 5). Default is None.
n_grid [int]: Grid density for vector field visualization. Default is 40.
palette [dict, optional]: Color mapping dictionary for cell types. Default is None.
direction [str, optional]: Label indicating perturbation direction for figure title. Default is None.
- Returns:
model_output_pert [dict]: Model output after applying perturbations.
References
[KLZ+23]Kenji Kamimoto, Chaoran Liu, Zeda Zhang, Kaili Meyer, Tim Stuart, Alex K. Shalek, and Nir Yosef. Dissecting cell identity via network inference and in silico gene perturbation. Nature, 614:742–751, 2023. URL: https://doi.org/10.1038/s41586-022-05688-9, doi:10.1038/s41586-022-05688-9.