dynamo.pl.curl(adata, basis='umap', color=None, cmap='bwr', frontier=True, sym_c=True, *args, **kwargs)[source]

Scatter plot with cells colored by the estimated curl (and other information if provided).

Cells with negative or positive curl correspond to cells with clock-wise rotation vectors or counter-clock-wise ration vectors. Currently only support for 2D vector field. But in principal could be generated to high dimension space.

  • adata (AnnData) – an Annodata object with curl estimated.

  • basis (str or None (default: umap)) – The embedding data in which the vector field was reconstructed and RNA curl was estimated.

  • color (str, list or None:) – Any column names or gene names, etc. in addition to the curl to be used for coloring cells.

  • frontier (bool (default: False)) – Whether to add the frontier. Scatter plots can be enhanced by using transparency (alpha) in order to show area of high density and multiple scatter plots can be used to delineate a frontier. See matplotlib tips & tricks cheatsheet (https://github.com/matplotlib/cheatsheets). Originally inspired by figures from scEU-seq paper: https://science.sciencemag.org/content/367/6482/1151.

  • sym_c (bool (default: False)) – Whether do you want to make the limits of continuous color to be symmetric, normally this should be used for plotting velocity, curl, divergence or other types of data with both positive or negative values.

Return type

Nothing but plots scatterplots with cells colored by the estimated curl (and other information if provided).


>>> import dynamo as dyn
>>> adata = dyn.sample_data.hgForebrainGlutamatergic()
>>> adata = dyn.pp.recipe_monocle(adata)
>>> dyn.tl.dynamics(adata)
>>> dyn.tl.reduceDimension(adata)
>>> dyn.tl.cell_velocities(adata, basis='umap')
>>> dyn.vf.VectorField(adata, basis='umap')
>>> dyn.vf.curl(adata, basis='umap')
>>> dyn.pl.curl(adata, basis='umap')

See also:: external.ddhodge.curl() for calculating curl with a diffusion graph built from reconstructed vector field.