Release Notes

Version 0.2.5 Oct 14, 2022


  • Catch non-positive parameter values and raise a ValueError if necessary (PR 614).

  • get_mean_var uses the same size parameter for mean and variance (PR 698).


  • filter_genes now works with adata.layers[‘unspliced’] being sparse and adata.layers[‘spliced’] dense (PR 537).

  • show_proportions actually considers the layer “ambiguous” if present (PR 587).

  • Fix calculation of Pearson’s correlation in csr_vcorrcoef (PR 679).

  • Fix get_mean_var to work with sparse input and ignore_zeros=True (PR 698).

  • Fix bug in neighbor calculation (PR 797).

  • Fix to work with numeric, non-integer values (PR 839).

  • Fix inference with fit_scaling=False (PR 848).

  • Fix saving of velocity embedding stream (PR 900).

  • Fix Pandas’ display precison when passed to get_df (PR 907).

Version 0.2.4 Aug 26, 2021


  • Landing page and two notebooks accompanying the perspectives manuscript at MSB.

  • New datasets: Gastrulation, bone marrow, and PBMCs.

New capabilities:

  • Added vignettes accompanying the NBT manuscript.

  • Kinetic simulations with time-dependent rates.

  • New arguments for tl.velocity_embedding_stream (PR 492).

  • Introduced automated code formatting flake8 and isort (PR 360, PR 374).

  • tl.velocity_graph parallelized (PR 392).

  • legend_align_text parameter in pl.scatter for smart placing of labels without overlapping.

  • Save option for pl.proportions.


  • Pinned sphinx<4.0 and nbsphinx<0.8.7.

  • Fix IPython import at CLI.

Version 0.2.3 Feb 13, 2021

  • tl.recover_dynamics: Multicore implementation thanks to M Klein, Y Schaelte, P Weiler

  • CI now runs on GitHub Actions

New utility functions:

  • utils.gene_info: Retrieve gene information from biothings client.

  • utils.convert_to_ensembl and utils.convert_to_gene_names: Converting ensembl IDs into gene names and vice versa.

Version 0.2.2 July 22, 2020

  • tl.paga: PAGA graph with velocity-directed edges.

  • Black code style

Version 0.2.1 May 28, 2020


  • Correct identification of root cells in tl.latent_time thanks to M Lange

  • Correct usage of latent_time prior in tl.paga thanks to G Lubatti

Version 0.2.0 May 12, 2020

New vignettes:

  • RNA velocity basics

  • Dynamical Modeling

  • Differential Kinetics


  • tl.differential_kinetic_test: introduced a statistical test to detect different kinetic regimes.

  • tl.rank_dynamical_genes: introduced a gene ranking by cluster-wise likelihoods.

  • tl.paga: introduced directed PAGA graph


  • pl.scatter enhancements: linear and polynomical fits, gradient coloring

  • pl.proportions: Pie and bar chart of spliced/unspliced proprtions.

  • GridSpec: multiplot environment.

Version 0.1.20 Sep 5, 2019


  • tl.recover_dynamics: introduced a dynamical model inferring the full splicing kinetics, thereby identifying all kinetic rates of transcription, splicing and degradation.

  • tl.recover_latent_time: infers a shared latent time across all genes based on the learned splicing dynamics.


  • pl.scatter enhancements: multiplots, rugplot, linear and polynomial fits, density plots, etc.

  • pl.heatmap: heatmap / clustermap of genes along time coordinate sorted by expression along dynamics.


  • New attributes in pp.filter_genes: min_shared_counts and min_shared_genes.

  • Added fast neighbor search method: Hierarchical Navigable Small World graphs (HNSW)

Version 0.1.14 Dec 7, 2018


  • New attriutes arrow_length and arrow_size for flexible adjustment of embedded velocities.

  • pl.velocity_graph: Scatter plot of embedding with cell-to-cell transition connectivities.

  • pl.velocity_embedding_stream: Streamplot visualization of velocities.

  • Improve visualization of embedded single cell velocities (autosize, colors etc.)


  • tl.cell_fate: compute cell-specific terminal state likelihood

  • New attribute approx=True in tl.velocity_graph to enable approximate graph computation by performing cosine correlations on PCA space.


  • Automatically detect whether data is already preprocessed.

Version 0.1.11 Oct 27, 2018


  • settings.set_figure_params(): adjust matplotlib defaults for beautified plots

  • improved default point and arrow sizes; improved quiver autoscale

  • enable direct plotting of


  • tl.velocity_confidence: Added two confidence measures ‘velocity_confidence’ and ‘velocity_confidence_transition’.

  • tl.rank_velocity_genes: Added functionality to rank genes for velocity characterizing groups using a t-test.

  • New attribute perc in tl.velocity enables extreme quantile fit, e.g. set perc=95.

  • New attribute groups in tl.velocity enables velocity estimation only on a subset of the data.

  • Improved tl.transition_matrix by incorporating self-loops via self_transitions=True and state changes that have negative correlation with velocity (opposite direction) via use_negative_cosines=True


  • utils.merge to merge to AnnData objects such as already existing AnnData and newly generated Loom File.

Version 0.1.8 Sep 12, 2018


  • support saving plots as pdf, png etc.

  • support multiple colors and layers

  • quiver autoscaling for velocity plots

  • attributes added: figsize and dpi


  • filter_and_normalize() instead of recipe_velocity()

  • normalization of layers is done automatically when computing moments


  • terminal_states: computes root and end points via eigenvalue decomposition thanks to M Lange

Version 0.1.5 Sep 4, 2018

  • Support writing loom files

  • Support both dense and sparse layers

  • Plotting bugfixes

  • Added pp.recipe_velocity()

Version 0.1.2 Aug 21, 2018

First alpha release of scvelo.