Repository 'scanpy_filter'
hg clone https://toolshed.g2.bx.psu.edu/repos/iuc/scanpy_filter

Changeset 17:713a0c65b1fe (2024-09-14)
Previous changeset 16:72a6bebab2a5 (2024-08-20) Next changeset 18:8cb783c81905 (2024-09-19)
Commit message:
planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/scanpy/ commit 91121b1e72696f17478dae383badaa71e9f96dbb
modified:
README.md
filter.xml
macros.xml
test-data/cosg.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_1.h5ad
test-data/pbmc68k_reduced.h5ad
test-data/pl.clustermap.krumsiek11.png
test-data/pl.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png
test-data/pl.dotplot.krumsiek11.png
test-data/pl.dpt_timeseries.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png
test-data/pl.draw_graph.png
test-data/pl.embedding_density.pbmc68k_reduced.png
test-data/pl.heatmap.krumsiek11.png
test-data/pl.highest_expr_genes.filter_genes_dispersion.krumsiek11-seurat.png
test-data/pl.highly_variable_genes.seurat.blobs.png
test-data/pl.matrixplot.krumsiek11.png
test-data/pl.paga.paul15_gauss_braycurtis.png
test-data/pl.paga_compare.paul15_gauss_braycurtis.png
test-data/pl.pca.pbmc68k_reduced.CD3D_CD79A_components_2d.pdf
test-data/pl.pca_loadings.pp.pca.krumsiek11.png
test-data/pl.pca_overview.pp.pca.krumsiek11.png
test-data/pl.pca_variance_ratio.pp.pca.krumsiek11.png
test-data/pl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_1.png
test-data/pl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.png
test-data/pl.rank_genes_groups.rank_genes_groups.krumsiek11.png
test-data/pl.rank_genes_groups_dotplot.rank_genes_groups.krumsiek11.png
test-data/pl.rank_genes_groups_heatmap.rank_genes_groups.krumsiek11.png
test-data/pl.rank_genes_groups_matrixplot.rank_genes_groups.krumsiek11.png
test-data/pl.rank_genes_groups_stacked_violin.rank_genes_groups.krumsiek11.png
test-data/pl.rank_genes_groups_violin.Ery.png
test-data/pl.rank_genes_groups_violin.Mk.png
test-data/pl.rank_genes_groups_violin.Mo.png
test-data/pl.rank_genes_groups_violin.Neu.png
test-data/pl.rank_genes_groups_violin.progenitor.png
test-data/pl.scatter.krumsiek11.png
test-data/pl.scatter.pbmc68k_reduced.png
test-data/pl.scatter.umap.pbmc68k_reduced.png
test-data/pl.stacked_violin.krumsiek11.png
test-data/pl.tsne.krumsiek11.png
test-data/pl.umap.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.png
test-data/pl.violin.pbmc68k_reduced_custom.png
test-data/pp.recipe_zheng17.random-randint.h5ad
test-data/random-randint.h5ad
test-data/sparce_csr_matrix.h5ad
test-data/tl.embedding_density.umap.pbmc68k_reduced.h5ad
test-data/tl.rank_genes_groups.newton-cg.pbmc68k_reduced.h5ad
added:
test-data/external.pp.bbknn.krumsiek11.h5ad
test-data/pl.rank_genes_groups_tracksplot.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.png
test-data/pl.scrublet_score_distribution.png
test-data/pl.stacked_violin_pp.filter_genes_dispersion.krumsiek11-seurat.png
test-data/pp.pca.krumsiek11.batch.h5ad
test-data/pp.scrublet.krumsiek11.h5ad
removed:
test-data/external.pp.magic.all_genes.krumsiek11.h5ad
test-data/external.pp.magic.pca_only.krumsiek11.h5ad
test-data/pp.calculate_qc_metrics.sparce_csr_matrix.h5ad
test-data/pp.downsample_counts.random-randint.h5ad
test-data/pp.filter_cells.krumsiek11-max_genes.h5ad
test-data/pp.filter_cells.krumsiek11-min_counts.h5ad
test-data/pp.filter_genes.krumsiek11-min_counts.h5ad
test-data/pp.filter_rank_genes_groups.h5ad
test-data/pp.highly_variable_genes.krumsiek11-cell_ranger.h5ad
test-data/pp.log1p.krumsiek11.h5ad
test-data/pp.normalize_total.krumsiek11.h5ad
test-data/pp.pca.krumsiek11_chunk.h5ad
test-data/pp.recipe_seurat.recipe_zheng17.h5ad
test-data/pp.recipe_weinreb17.paul15_subsample.updated.h5ad
test-data/pp.scale.krumsiek11.h5ad
test-data/pp.scale_max_value.krumsiek11.h5ad
test-data/pp.sqrt.krumsiek11.h5ad
test-data/pp.subsample.krumsiek11_fraction.h5ad
test-data/pp.subsample.krumsiek11_n_obs.h5ad
test-data/tl.embedding_density.umap.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.h5ad
test-data/tl.leiden.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad
test-data/tl.louvain.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad
test-data/tl.paga.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad
test-data/tl.rank_genes_groups.liblinear.krumsiek11.h5ad
test-data/tl.score_genes.krumsiek11.h5ad
test-data/tl.score_genes_cell_cycle.krumsiek11.h5ad
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe README.md
--- a/README.md Tue Aug 20 09:53:08 2024 +0000
+++ b/README.md Sat Sep 14 12:42:13 2024 +0000
[
@@ -25,6 +25,7 @@
     `pp.highly_variable_genes` | Extract highly variable genes
     `pp.subsample` | Subsample to a fraction of the number of observations
     `pp.downsample_counts` | Downsample counts so that each cell has no more than target_counts
+    `pp.scrublet` | Predict doublets
 
 3. Normalize (`normalize.xml`)
 
@@ -34,14 +35,18 @@
     `pp.recipe_zheng17` | Normalization and filtering as of [Zheng17]
     `pp.recipe_weinreb17` | Normalization and filtering as of [Weinreb17]
     `pp.recipe_seurat` | Normalization and filtering as of Seurat [Satija15]
+    `external.pp.magic` | Denoising using Markov Affinity-based Graph Imputation of Cells (MAGIC) API
 
 4. Remove confounders (`remove_confounder.xml`)
 
     Methods | Description
     --- | ---
    `pp.regress_out` | Regress out unwanted sources of variation
-   `pp.mnn_correct` | Correct batch effects by matching mutual nearest neighbors
+   <!-- `pp.mnn_correct` | Correct batch effects by matching mutual nearest neighbors -->
    `pp.combat` | ComBat function for batch effect correction
+    `external.pp.bbknn` | Batch effect removal with Batch balanced KNN (BBKNN)
+    `external.pp.harmony_integrate` | Integrate multiple single-cell experiments with Harmony
+    `external.pp.scanorama_integrate` | Integrate multiple single-cell experiments with Scanorama
 
 5. Clustering, embedding and trajectory inference (`cluster_reduce_dimension.xml`)
 
@@ -49,14 +54,14 @@
     --- | ---
     `tl.louvain` | Cluster cells into subgroups
     `tl.leiden` | Cluster cells into subgroups
-    `tl.pca` | Principal component analysis
-    `pp.pca` | Principal component analysis (appears to be the same func...)
+    `pp.pca` | Principal component analysis
     `tl.diffmap` | Diffusion Maps
     `tl.tsne` | t-SNE
     `tl.umap` | Embed the neighborhood graph using UMAP
     `tl.draw_graph` | Force-directed graph drawing
     `tl.dpt` | Infer progression of cells through geodesic distance along the graph
     `tl.paga` | Mapping out the coarse-grained connectivity structures of complex manifolds
+    `tl.embedding_density` | Calculate the density of cells in an embedding (per condition)
 
 6. Plot (`plot.xml`)
 
@@ -66,18 +71,20 @@
         --- | ---
         `pl.scatter` | Scatter plot along observations or variables axes
         `pl.heatmap` | Heatmap of the expression values of set of genes
+        `pl.tracksplot` | Tracks plot of the expression values per cell
         `pl.dotplot` | Makes a dot plot of the expression values
         `pl.violin` | Violin plot
         `pl.stacked_violin` | Stacked violin plots
         `pl.matrixplot` | Heatmap of the mean expression values per cluster
         `pl.clustermap` | Hierarchically-clustered heatmap
-    
+
     2. Preprocessing
 
         Methods | Description
         --- | ---
         `pl.highest_expr_genes` | Plot the fraction of counts assigned to each gene over all cells
         `pl.highly_variable_genes` | Plot dispersions versus means for genes
+        `pl.scrublet_score_distribution` | Histogram of doublet scores
 
     3. PCA
 
@@ -96,12 +103,13 @@
         `pl.umap` | Scatter plot in UMAP basis
         `pl.diffmap` | Scatter plot in Diffusion Map basis
         `pl.draw_graph` | Scatter plot in graph-drawing basis
+        `pl.embedding_density` | Density of cells in an embedding (per condition)
 
     5. Branching trajectories and pseudotime, clustering
 
         Methods | Description
         --- | ---
-        `pl.dpt_groups_pseudotime` | Plot groups and pseudotime
+        <!-- `pl.dpt_groups_pseudotime` | Plot groups and pseudotime -->
         `pl.dpt_timeseries` | Heatmap of pseudotime series
         `pl.paga` | Plot the abstracted graph through thresholding low-connectivity edges
         `pl.paga_compare` | Scatter and PAGA graph side-by-side
@@ -113,3 +121,8 @@
         --- | ---
         `pl.rank_genes_groups` | Plot ranking of genes using dotplot plot
         `pl.rank_genes_groups_violin` | Plot ranking of genes for all tested comparisons
+        `pl.rank_genes_groups_stacked_violin` | Plot ranking of genes as stacked violin plot
+        `pl.rank_genes_groups_heatmap` | Plot ranking of genes as heatmap plot
+        `pl.rank_genes_groups_dotplot` | Plot ranking of genes as dotplot plot
+        `pl.rank_genes_groups_matrixplot` | Plot ranking of genes as matrixplot plot
+        `pl.rank_genes_groups_tracksplot` | Plot ranking of genes as tracksplot plot
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe filter.xml
--- a/filter.xml Tue Aug 20 09:53:08 2024 +0000
+++ b/filter.xml Sat Sep 14 12:42:13 2024 +0000
[
b'@@ -1,18 +1,21 @@\n-<tool id="scanpy_filter" name="Filter" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@profile@">\n-    <description>with scanpy</description>\n+<tool id="scanpy_filter" name="Scanpy filter" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">\n+    <description>mark and subsample</description>\n     <macros>\n         <import>macros.xml</import>\n     </macros>\n     <expand macro="bio_tools"/>\n-    <expand macro="requirements"/>\n+    <expand macro="requirements">\n+        <requirement type="package" version="0.2.3">scrublet</requirement>\n+        <requirement type="package" version="0.1.4">scikit-misc</requirement>\n+    </expand>\n     <expand macro="version_command"/>\n     <command detect_errors="exit_code"><![CDATA[\n @CMD@\n       ]]></command>\n     <configfiles>\n         <configfile name="script_file"><![CDATA[\n-@CMD_imports@\n-@CMD_read_inputs@\n+@CMD_IMPORTS@\n+@CMD_READ_INPUTS@\n \n #if $method.method == \'pp.filter_cells\'\n sc.pp.filter_cells(\n@@ -28,6 +31,8 @@\n     #end if\n     copy=False)\n \n+@CMD_ANNDATA_WRITE_OUTPUTS@\n+\n #else if $method.method == \'pp.filter_genes\'\n sc.pp.filter_genes(\n     adata,\n@@ -42,6 +47,8 @@\n     #end if\n     copy=False)\n \n+@CMD_ANNDATA_WRITE_OUTPUTS@\n+\n #else if $method.method == \'tl.filter_rank_genes_groups\'\n sc.tl.filter_rank_genes_groups(\n     adata,\n@@ -55,26 +62,49 @@\n     key_added=\'$method.key_added\',\n     min_in_group_fraction=$method.min_in_group_fraction,\n     max_out_group_fraction=$method.max_out_group_fraction,\n-    min_fold_change=$method.min_fold_change)\n+    min_fold_change=$method.min_fold_change,\n+    compare_abs=$method.compare_abs)\n+\n+# Temporary fix for Issue reported here: https://github.com/scverse/anndata/issues/726\n+# Check and convert elements in \'rank_genes_groups_filtered\' to strings\n+if \'rank_genes_groups_filtered\' in adata.uns:\n+    for key, value in adata.uns[\'rank_genes_groups_filtered\'].items():\n+        if not isinstance(value, str):\n+            adata.uns[\'rank_genes_groups_filtered\'][key] = str(value)\n+\n+@CMD_ANNDATA_WRITE_OUTPUTS@\n \n #else if $method.method == "pp.highly_variable_genes"\n sc.pp.highly_variable_genes(\n     adata=adata,\n     flavor=\'$method.flavor.flavor\',\n-    #if $method.flavor.flavor == \'seurat\'\n-        min_mean=$method.flavor.min_mean,\n-        max_mean=$method.flavor.max_mean,\n-        min_disp=$method.flavor.min_disp,\n+    #if $method.flavor.flavor == \'seurat\':\n+    min_mean=$method.flavor.min_mean,\n+    max_mean=$method.flavor.max_mean,\n+    min_disp=$method.flavor.min_disp,\n         #if str($method.flavor.max_disp) != \'\'\n-        max_disp=$method.flavor.max_disp,\n+    max_disp=$method.flavor.max_disp,\n         #end if\n-    #else if $method.flavor.flavor == \'cell_ranger\'\n+    #else if $method.flavor.flavor == \'cell_ranger\':\n+    n_top_genes=$method.flavor.n_top_genes,\n+    #else if $method.flavor.flavor == \'seurat_v3\':\n+    n_top_genes=$method.flavor.n_top_genes,\n+    span=$method.flavor.span,\n+    #else if $method.flavor.flavor == \'seurat_v3_paper\':\n     n_top_genes=$method.flavor.n_top_genes,\n     #end if\n     n_bins=$method.n_bins,\n     subset=$method.subset,\n+    #if $method.layer != \'\'\n+    layer=\'$method.layer\',\n+    #end if\n+    #if $method.batch_key != \'\'\n+    layer=\'$method.batch_key\',\n+    #end if\n     inplace=True)\n \n+@CMD_ANNDATA_WRITE_OUTPUTS@\n+\n #else if $method.method == \'pp.subsample\'\n sc.pp.subsample(\n     data=adata,\n@@ -86,7 +116,16 @@\n     random_state=$method.random_state,\n     copy=False)\n \n+@CMD_ANNDATA_WRITE_OUTPUTS@\n+\n #else if $method.method == "pp.downsample_counts"\n+    #if str($method.counts_per_cell) != \'\'\n+print("Sum of counts for the first cell before:", adata.X[0, :].sum())\n+print("Sum of counts for the last cell before:", adata.X[adata.X.shape[0]-1, :].sum())\n+    #else if str($method.total_counts) != \'\'\n+print("Sum of total counts before:", adata.X.sum())\n+    #end if\n+\n sc.pp.downsample_counts(\n     adata=adata,\n     #if str($method.counts_per_cell) != \'\'\n@@ -99,11 +1'..b'   <conditional name="layer_selection">\n+                    <param name="use_raw" value="True"/>\n+                </conditional>\n                 <param name="groupby" value="bulk_labels"/>\n             </conditional>\n             <section name="advanced_common">\n-                <param name="show_log" value="true" />\n+                <param name="show_log" value="true"/>\n             </section>\n             <output name="hidden_output">\n                 <assert_contents>\n                     <has_text_matching expression="adata, key, x, 1.0, 0.2, \'bulk_labels\'"/>\n                 </assert_contents>\n             </output>\n-            <output name="anndata_out" file="cosg.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_1_out.h5ad" ftype="h5ad">\n+            <output name="marker_out" ftype="tabular">\n                 <assert_contents>\n-                    <has_h5_keys keys="obs, var, uns" />\n+                    <has_text text="CD14+ Monocyte"/>\n+                    <has_text text="C9orf142"/>\n+                    <has_text text="EGR1"/>\n+                    <has_text text="GZMB"/>\n                 </assert_contents>\n             </output>\n-            <output name="marker_out" file="tl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.tsv" ftype="tabular" compare="sim_size"/>\n+        </test>\n+\n+        <!-- test 11 -->\n+        <test expect_num_outputs="2">\n+            <param name="adata" value="krumsiek11.h5ad"/>\n+            <conditional name="method">\n+            <param name="method" value="pp.scrublet"/>\n+                <param name="n_prin_comps" value="5"/>\n+            </conditional>\n+            <section name="advanced_common">\n+                <param name="show_log" value="true"/>\n+            </section>\n+            <output name="hidden_output">\n+                <assert_contents>\n+                    <has_text_matching expression="sc.pp.scrublet"/>\n+                    <has_text_matching expression="sim_doublet_ratio=2.0"/>\n+                    <has_text_matching expression="expected_doublet_rate=0.05"/>\n+                    <has_text_matching expression="n_prin_comps=5"/>\n+                </assert_contents>\n+            </output>\n+            <output name="anndata_out" ftype="h5ad">\n+                <assert_contents>\n+                    <has_h5_keys keys="obs/doublet_score,obs/predicted_doublet"/>\n+                    <has_h5_keys keys="uns/scrublet"/>\n+                </assert_contents>\n+            </output>\n         </test>\n     </tests>\n     <help><![CDATA[\n@@ -589,9 +799,11 @@\n Downsample counts so that each cell has no more than `target_counts`. Cells with fewer counts than `target_counts` are unaffected by this. This\n has been implemented by M. D. Luecken.\n \n+More details on the `scanpy documentation\n+<https://scanpy.readthedocs.io/en/stable/generated/scanpy.pp.downsample_counts.html>`__\n \n Filter marker genes (`filter_marker`)\n-======================================================================\n+=====================================\n \n This option is specific for celltype marker gene detection. You can generate a celltype marker gene file (tsv) with **COSG** provided at Galaxy.\n \n@@ -603,6 +815,14 @@\n <https://scanpy.readthedocs.io/en/stable/api/scanpy.pp.downsample_counts.html>`__\n \n \n+Predict cell doublets using a nearest-neighbor classifier of observed transcriptomes and simulated doublets. (`pp.scrublet`)\n+============================================================================================================================\n+\n+Works best if the input is a raw (unnormalized) counts matrix from a single sample or a collection of similar samples from the same experiment. This function is a wrapper around functions that pre-process using Scanpy and directly call functions of Scrublet().\n+\n+More details on the `scanpy documentation\n+<https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pp.scrublet.html>`__\n+\n     ]]></help>\n     <expand macro="citations"/>\n </tool>\n'
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe macros.xml
--- a/macros.xml Tue Aug 20 09:53:08 2024 +0000
+++ b/macros.xml Sat Sep 14 12:42:13 2024 +0000
[
b'@@ -1,17 +1,15 @@\n <macros>\n-    <token name="@TOOL_VERSION@">1.9.6</token>\n-    <token name="@VERSION_SUFFIX@">4</token>\n-    <token name="@profile@">21.09</token>\n+    <token name="@TOOL_VERSION@">1.10.2</token>\n+    <token name="@VERSION_SUFFIX@">0</token>\n+    <token name="@PROFILE@">21.09</token>\n     <xml name="requirements">\n         <requirements>\n             <requirement type="package" version="@TOOL_VERSION@">scanpy</requirement>\n-            <requirement type="package" version="3.0.6">loompy</requirement>\n-            <requirement type="package" version="0.10.1">leidenalg</requirement>\n-            <requirement type="package" version="0.8.1">louvain</requirement>\n-            <requirement type="package" version="1.5.3">pandas</requirement>\n-            <requirement type="package" version="3.7">matplotlib</requirement>\n-            <requirement type="package" version="0.12.2">seaborn</requirement>\n-            <requirement type="package" version="3.0.0">magic-impute</requirement>\n+            <requirement type="package" version="0.10.3">anndata</requirement>\n+            <requirement type="package" version="1.26.4">numpy</requirement>\n+            <requirement type="package" version="2.2.2">pandas</requirement>\n+            <requirement type="package" version="1.14.1">scipy</requirement>\n+            <requirement type="package" version="0.14.2">statsmodels</requirement>           \n             <yield />\n         </requirements>\n     </xml>\n@@ -22,7 +20,7 @@\n     </xml>\n     <xml name="creators">\n         <creator>\n-            <organization name="European Galaxy Team" url="https://galaxyproject.org/eu/" />\n+            <organization name="European Galaxy Team" url="https://galaxyproject.org/eu/"/>\n         </creator>\n     </xml>\n     <xml name="citations">\n@@ -31,28 +29,13 @@\n             <citation type="doi">10.1093/gigascience/giaa102</citation>\n         </citations>\n     </xml>\n-    <xml name="version_command">\n-        <version_command><![CDATA[python -c "import scanpy as sc;print(\'scanpy version: %s\' % sc.__version__)"]]></version_command>\n-    </xml>\n-    <token name="@CMD@"><![CDATA[\n-cp \'$adata\' \'anndata.h5ad\' &&\n-cat \'$script_file\' > \'$hidden_output\' &&\n-python \'$script_file\' >> \'$hidden_output\' &&\n-ls . >> \'$hidden_output\' &&\n-touch \'anndata_info.txt\' &&\n-cat \'anndata_info.txt\' @CMD_prettify_stdout@\n-    ]]>\n-    </token>\n-    <token name="@CMD_imports@"><![CDATA[\n-import scanpy as sc\n-import pandas as pd\n-import numpy as np\n-    ]]>\n-    </token>\n+    \n+    \n+    <!-- param macros -->\n     <xml name="sanitize_query" token_validinitial="string.printable">\n         <sanitizer>\n             <valid initial="@VALIDINITIAL@">\n-                <remove value="&apos;" />\n+                <remove value="&apos;"/>\n             </valid>\n        </sanitizer>\n     </xml>\n@@ -62,58 +45,55 @@\n                 <add value=","/>\n             </valid>\n         </sanitizer>\n-    </xml>\n+    </xml>      \n     <xml name="inputs_anndata">\n         <param name="adata" type="data" format="h5ad" label="Annotated data matrix"/>\n     </xml>\n-    <token name="@CMD_read_inputs@"><![CDATA[\n-adata = sc.read_h5ad(\'anndata.h5ad\')\n-]]>\n-    </token>\n     <xml name="inputs_common_advanced">\n         <section name="advanced_common" title="Advanced Options" expanded="false">\n-            <param name="show_log" type="boolean" checked="false" label="Output Log?" />\n+            <param name="show_log" type="boolean" checked="false" label="Output Log?"/>\n         </section>\n     </xml>\n     <xml name="anndata_outputs">\n-        <data name="anndata_out" format="h5ad" from_work_dir="anndata.h5ad" label="${tool.name} (${method.method}) on ${on_string}: Annotated data matrix"/>\n-            <data name="hidden_output" format="txt" label="Log file" >\n+        <data name="anndata_out" format="h5ad" from_work_dir="anndata.h5ad" label="${tool.name} (${method.method}) on ${on_string}: Annotated data matrix">\n+            <yield />\n+        </data>\n+       '..b'row_palette" type="select" optional="true" label="Colors to use in each of the stacked violin plots">\n             <option value="muted">muted</option>\n             <expand macro="seaborn_color_palette_options"/>\n         </param>\n-        <param argument="standard_scale" type="select" label="Standardize a dimension between 0 and 1" help="Each variable or observation is subtracted by the minimum and divided each by its maximum.">\n-            <option value="None">No standardization</option>\n-            <option value="var">Standardization on variable</option>\n-            <option value="obs">Standardization on observation</option>\n-        </param>\n-        <expand macro="seaborn_violinplot"/>\n+        <expand macro="param_standard_scale"/>\n+        <expand macro="params_seaborn_violinplot"/>\n+        <param argument="yticklabels" type="boolean" truevalue="True" falsevalue="False" checked="false" label="Set to view the y tick labels"/>\n+        <expand macro="param_vmin" label="The value representing the lower limit of the color scale" help="Values smaller than vmin are plotted with the same color as vmin."/>\n+        <expand macro="param_vmax" label="The value representing the upper limit of the color scale" help="Values larger than vmax are plotted with the same color as vmax."/>\n+        <expand macro="param_vcenter"/>\n     </xml>\n-    <token name="@CMD_pl_stacked_violin@"><![CDATA[\n+    <token name="@CMD_PARAMS_PL_STACKED_VIOLIN@"><![CDATA[\n     swap_axes=$method.swap_axes,\n-    @CMD_conditional_stripplot@\n-    scale=\'$method.violin_plot.scale\',\n-    #if $method.row_palette\n+    @CMD_CONDITIONAL_STRIPPLOT@\n+    density_norm=\'$method.violin_plot.density_norm\',\n+    #if $method.row_palette:\n     row_palette=\'$method.row_palette\',\n     #end if\n-    #if str($method.standard_scale) != \'None\'\n-    standard_scale=\'$method.standard_scale\',\n+    @CMD_STANDARD_SCALE@\n+    @CMD_PARAMS_SEABORN_VIOLINPLOT@\n+    yticklabels=$method.yticklabels,\n+    #if str($method.vmin) != \'\':\n+    vmin=$method.vmin,\n     #end if\n-    @CMD_params_seaborn_violinplot@\n+    #if str($method.vmax) != \'\':\n+    vmax=$method.vmax,\n+    #end if\n+    #if str($method.vcenter) != \'\':\n+    vcenter=$method.vcenter,\n+    #end if\n     ]]>\n     </token>\n+\n+    <xml name="params_scatter_outine">\n+        <param argument="add_outline" type="boolean" truevalue="True" falsevalue="False" checked="false" label="Add a thin border around groups of dots" help="In some situations this can enhance the aesthetics of the resulting image"/>\n+        <param name="outline_color_border" type="select" optional="true" label="Border color around the scatter dot" help="Default: black">\n+            <expand macro="matplotlib_color"/>\n+        </param>\n+        <param name="outline_color_gap" type="select" optional="true" label="Gap color between the border color and the scatter dot" help="Default: white">\n+            <expand macro="matplotlib_color"/>\n+        </param>\n+        <param argument="outline_width_border" type="float" value="0.3" optional="true" label=" width of the border color as a fraction of the scatter dot size "/>\n+        <param argument="outline_width_gap" type="float" value="0.05" optional="true" label="The width of the gap color"/>\n+    </xml>\n+    <token name="@CMD_SCATTER_OUTINE@"><![CDATA[\n+    add_outline=$method.add_outline,\n+    #if $method.outline_color_border and $method.outline_color_gap:\n+    outline_color=($method.outline_color_border, $method.outline_color_gap),\n+    #end if\n+    outline_width=($method.outline_width_border, $method.outline_width_gap),\n+    ]]>\n+    </token>\n+\n+\n+    <!-- unused macros -->\n+    <!-- <xml name="param_right_margin">\n+        <param argument="right_margin" type="float" value="1" label="Width of the space right of each plotting panel"/>\n+    </xml>\n+    <xml name="param_left_margin">\n+        <param argument="left_margin" type="float" value="1" label="Width of the space left of each plotting panel"/>\n+    </xml> -->\n </macros>\n'
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/cosg.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_1.h5ad
b
Binary file test-data/cosg.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_1.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/external.pp.bbknn.krumsiek11.h5ad
b
Binary file test-data/external.pp.bbknn.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/external.pp.magic.all_genes.krumsiek11.h5ad
b
Binary file test-data/external.pp.magic.all_genes.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/external.pp.magic.pca_only.krumsiek11.h5ad
b
Binary file test-data/external.pp.magic.pca_only.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pbmc68k_reduced.h5ad
b
Binary file test-data/pbmc68k_reduced.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.clustermap.krumsiek11.png
b
Binary file test-data/pl.clustermap.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png
b
Binary file test-data/pl.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.dotplot.krumsiek11.png
b
Binary file test-data/pl.dotplot.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.dpt_timeseries.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png
b
Binary file test-data/pl.dpt_timeseries.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.draw_graph.png
b
Binary file test-data/pl.draw_graph.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.embedding_density.pbmc68k_reduced.png
b
Binary file test-data/pl.embedding_density.pbmc68k_reduced.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.heatmap.krumsiek11.png
b
Binary file test-data/pl.heatmap.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.highest_expr_genes.filter_genes_dispersion.krumsiek11-seurat.png
b
Binary file test-data/pl.highest_expr_genes.filter_genes_dispersion.krumsiek11-seurat.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.highly_variable_genes.seurat.blobs.png
b
Binary file test-data/pl.highly_variable_genes.seurat.blobs.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.matrixplot.krumsiek11.png
b
Binary file test-data/pl.matrixplot.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.paga.paul15_gauss_braycurtis.png
b
Binary file test-data/pl.paga.paul15_gauss_braycurtis.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.paga_compare.paul15_gauss_braycurtis.png
b
Binary file test-data/pl.paga_compare.paul15_gauss_braycurtis.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.pca.pbmc68k_reduced.CD3D_CD79A_components_2d.pdf
b
Binary file test-data/pl.pca.pbmc68k_reduced.CD3D_CD79A_components_2d.pdf has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.pca_loadings.pp.pca.krumsiek11.png
b
Binary file test-data/pl.pca_loadings.pp.pca.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.pca_overview.pp.pca.krumsiek11.png
b
Binary file test-data/pl.pca_overview.pp.pca.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.pca_variance_ratio.pp.pca.krumsiek11.png
b
Binary file test-data/pl.pca_variance_ratio.pp.pca.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_1.png
b
Binary file test-data/pl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_1.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.png
b
Binary file test-data/pl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups.rank_genes_groups.krumsiek11.png
b
Binary file test-data/pl.rank_genes_groups.rank_genes_groups.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups_dotplot.rank_genes_groups.krumsiek11.png
b
Binary file test-data/pl.rank_genes_groups_dotplot.rank_genes_groups.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups_heatmap.rank_genes_groups.krumsiek11.png
b
Binary file test-data/pl.rank_genes_groups_heatmap.rank_genes_groups.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups_matrixplot.rank_genes_groups.krumsiek11.png
b
Binary file test-data/pl.rank_genes_groups_matrixplot.rank_genes_groups.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups_stacked_violin.rank_genes_groups.krumsiek11.png
b
Binary file test-data/pl.rank_genes_groups_stacked_violin.rank_genes_groups.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups_tracksplot.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.png
b
Binary file test-data/pl.rank_genes_groups_tracksplot.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups_violin.Ery.png
b
Binary file test-data/pl.rank_genes_groups_violin.Ery.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups_violin.Mk.png
b
Binary file test-data/pl.rank_genes_groups_violin.Mk.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups_violin.Mo.png
b
Binary file test-data/pl.rank_genes_groups_violin.Mo.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups_violin.Neu.png
b
Binary file test-data/pl.rank_genes_groups_violin.Neu.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.rank_genes_groups_violin.progenitor.png
b
Binary file test-data/pl.rank_genes_groups_violin.progenitor.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.scatter.krumsiek11.png
b
Binary file test-data/pl.scatter.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.scatter.pbmc68k_reduced.png
b
Binary file test-data/pl.scatter.pbmc68k_reduced.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.scatter.umap.pbmc68k_reduced.png
b
Binary file test-data/pl.scatter.umap.pbmc68k_reduced.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.scrublet_score_distribution.png
b
Binary file test-data/pl.scrublet_score_distribution.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.stacked_violin.krumsiek11.png
b
Binary file test-data/pl.stacked_violin.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.stacked_violin_pp.filter_genes_dispersion.krumsiek11-seurat.png
b
Binary file test-data/pl.stacked_violin_pp.filter_genes_dispersion.krumsiek11-seurat.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.tsne.krumsiek11.png
b
Binary file test-data/pl.tsne.krumsiek11.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.umap.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.png
b
Binary file test-data/pl.umap.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pl.violin.pbmc68k_reduced_custom.png
b
Binary file test-data/pl.violin.pbmc68k_reduced_custom.png has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.calculate_qc_metrics.sparce_csr_matrix.h5ad
b
Binary file test-data/pp.calculate_qc_metrics.sparce_csr_matrix.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.downsample_counts.random-randint.h5ad
b
Binary file test-data/pp.downsample_counts.random-randint.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.filter_cells.krumsiek11-max_genes.h5ad
b
Binary file test-data/pp.filter_cells.krumsiek11-max_genes.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.filter_cells.krumsiek11-min_counts.h5ad
b
Binary file test-data/pp.filter_cells.krumsiek11-min_counts.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.filter_genes.krumsiek11-min_counts.h5ad
b
Binary file test-data/pp.filter_genes.krumsiek11-min_counts.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.filter_rank_genes_groups.h5ad
b
Binary file test-data/pp.filter_rank_genes_groups.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.highly_variable_genes.krumsiek11-cell_ranger.h5ad
b
Binary file test-data/pp.highly_variable_genes.krumsiek11-cell_ranger.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.log1p.krumsiek11.h5ad
b
Binary file test-data/pp.log1p.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.normalize_total.krumsiek11.h5ad
b
Binary file test-data/pp.normalize_total.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.pca.krumsiek11.batch.h5ad
b
Binary file test-data/pp.pca.krumsiek11.batch.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.pca.krumsiek11_chunk.h5ad
b
Binary file test-data/pp.pca.krumsiek11_chunk.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.recipe_seurat.recipe_zheng17.h5ad
b
Binary file test-data/pp.recipe_seurat.recipe_zheng17.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.recipe_weinreb17.paul15_subsample.updated.h5ad
b
Binary file test-data/pp.recipe_weinreb17.paul15_subsample.updated.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.recipe_zheng17.random-randint.h5ad
b
Binary file test-data/pp.recipe_zheng17.random-randint.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.scale.krumsiek11.h5ad
b
Binary file test-data/pp.scale.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.scale_max_value.krumsiek11.h5ad
b
Binary file test-data/pp.scale_max_value.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.scrublet.krumsiek11.h5ad
b
Binary file test-data/pp.scrublet.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.sqrt.krumsiek11.h5ad
b
Binary file test-data/pp.sqrt.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.subsample.krumsiek11_fraction.h5ad
b
Binary file test-data/pp.subsample.krumsiek11_fraction.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/pp.subsample.krumsiek11_n_obs.h5ad
b
Binary file test-data/pp.subsample.krumsiek11_n_obs.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/random-randint.h5ad
b
Binary file test-data/random-randint.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/sparce_csr_matrix.h5ad
b
Binary file test-data/sparce_csr_matrix.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/tl.embedding_density.umap.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.h5ad
b
Binary file test-data/tl.embedding_density.umap.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/tl.embedding_density.umap.pbmc68k_reduced.h5ad
b
Binary file test-data/tl.embedding_density.umap.pbmc68k_reduced.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/tl.leiden.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad
b
Binary file test-data/tl.leiden.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/tl.louvain.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad
b
Binary file test-data/tl.louvain.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/tl.paga.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad
b
Binary file test-data/tl.paga.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/tl.rank_genes_groups.liblinear.krumsiek11.h5ad
b
Binary file test-data/tl.rank_genes_groups.liblinear.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/tl.rank_genes_groups.newton-cg.pbmc68k_reduced.h5ad
b
Binary file test-data/tl.rank_genes_groups.newton-cg.pbmc68k_reduced.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/tl.score_genes.krumsiek11.h5ad
b
Binary file test-data/tl.score_genes.krumsiek11.h5ad has changed
b
diff -r 72a6bebab2a5 -r 713a0c65b1fe test-data/tl.score_genes_cell_cycle.krumsiek11.h5ad
b
Binary file test-data/tl.score_genes_cell_cycle.krumsiek11.h5ad has changed