, groups=None, n_genes=10, groupby=None, values_to_plot=None, min_logfoldchange=None, key=None, show=None, save=None, return_fig=False, **kwds)

Plot ranking of genes using dotplot plot (see dotplot())

adata : AnnDataAnnData

Annotated data matrix.

groups : str, Sequence[str], NoneUnion[str, Sequence[str], None] (default: None)

The groups for which to show the gene ranking.

n_genes : intint (default: 10)

Number of genes to show.

groupby : str, NoneOptional[str] (default: None)

The key of the observation grouping to consider. By default, the groupby is chosen from the rank genes groups parameter but other groupby options can be used. It is expected that groupby is a categorical. If groupby is not a categorical observation, it would be subdivided into num_categories (see dotplot()).

min_logfoldchange : float, NoneOptional[float] (default: None)

Value to filter genes in groups if their logfoldchange is less than the min_logfoldchange

key : str, NoneOptional[str] (default: None)

Key used to store the ranking results in adata.uns.

show : bool, NoneOptional[bool] (default: None)

Show the plot, do not return axis.

save : bool, NoneOptional[bool] (default: None)

If True or a str, save the figure. A string is appended to the default filename. Infer the filetype if ending on {'.pdf', '.png', '.svg'}.


A matplotlib axes object. Only works if plotting a single component.

return_fig : bool, NoneOptional[bool] (default: False)

Returns DotPlot object. Useful for fine-tuning the plot. Takes precedence over show=False.


Are passed to dotplot().


If return_fig is True, returns a DotPlot object, else if show is false, return axes dict


>>> import scanpy as sc
>>> adata = sc.datasets.pbmc68k_reduced()
>>>, 'bulk_labels', n_genes=adata.raw.shape[1])

Plot logfoldchanges, set manually min value to plot as -4 and max as 4 and plot only genes in each group that have a minimum log fold change of 3 >>>, … n_genes=4, values_to_plot=”logfoldchanges”, … vmin=-5, vmax=5, min_logfoldchange=3)