comparison plot.xml @ 17:2dfb2227a16c draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/scanpy/ commit 91121b1e72696f17478dae383badaa71e9f96dbb
author iuc
date Sat, 14 Sep 2024 12:44:20 +0000
parents 1072ce66b426
children
comparison
equal deleted inserted replaced
16:1072ce66b426 17:2dfb2227a16c
1 <tool id="scanpy_plot" name="Plot" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@profile@"> 1 <tool id="scanpy_plot" name="Scanpy plot" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="@PROFILE@">
2 <description> with scanpy</description>
3 <macros> 2 <macros>
4 <import>macros.xml</import> 3 <import>macros.xml</import>
5 </macros> 4 </macros>
6 <expand macro="bio_tools"/> 5 <expand macro="bio_tools"/>
7 <expand macro="requirements"/> 6 <expand macro="requirements">
7 <requirement type="package" version="3.9.1">matplotlib</requirement>
8 <requirement type="package" version="0.13.2">seaborn</requirement>
9 <requirement type="package" version="0.11.6">python-igraph</requirement>
10 </expand>
8 <stdio> 11 <stdio>
9 <regex match="... storing" source="stderr" level="warning"/> 12 <regex match="... storing" source="stderr" level="warning"/>
10 </stdio> 13 </stdio>
11 <expand macro="version_command"/> 14 <expand macro="version_command"/>
12 <command detect_errors="exit_code"><![CDATA[ 15 <command detect_errors="exit_code"><![CDATA[
13 @CMD@ 16 @CMD@
14 ]]></command> 17 ]]></command>
15 <configfiles> 18 <configfiles>
16 <configfile name="script_file"><![CDATA[ 19 <configfile name="script_file"><![CDATA[
17 @CMD_imports@ 20 @CMD_IMPORTS@
18 @CMD_read_inputs@ 21 @CMD_READ_INPUTS@
19 22
20 sc.settings.figdir = '.' 23 sc.settings.figdir = '.'
21 24
22 #if $method.method == 'pl.scatter' 25 #if str($method.method) == 'pl.scatter':
23 26
24 #if $method.type.type == 'xy': 27 #if str($method.type.type) == 'xy':
25 x_field='$method.type.x' 28 x_field='$method.type.x'
26 y_field='$method.type.y' 29 y_field='$method.type.y'
27 30
28 #if $method.type.log: 31 #if $method.type.log:
29 if x_field in adata.obs or x_field in adata.var: 32 if x_field in adata.obs or x_field in adata.var:
30 if x_field in adata.obs: 33 if x_field in adata.obs:
31 adata.obs[f"log_{x_field}"] = np.log10(adata.obs[x_field]) 34 adata.obs[f"log_{x_field}"] = np.log10(adata.obs[x_field])
32 elif x_field in adata.var: 35 elif x_field in adata.var:
33 adata.var[f"log_{x_field}"] = np.log10(adata.var[x_field]) 36 adata.var[f"log_{x_field}"] = np.log10(adata.var[x_field])
37 if y_field in adata.obs: 40 if y_field in adata.obs:
38 adata.obs[f"log_{y_field}"] = np.log10(adata.obs[y_field]) 41 adata.obs[f"log_{y_field}"] = np.log10(adata.obs[y_field])
39 elif y_field in adata.var: 42 elif y_field in adata.var:
40 adata.var[f"log_{y_field}"] = np.log10(adata.var[y_field]) 43 adata.var[f"log_{y_field}"] = np.log10(adata.var[y_field])
41 y_field=f"log_{y_field}" 44 y_field=f"log_{y_field}"
42 #end if 45 #end if
43 #end if 46 #end if
44 47
45 sc.pl.scatter( 48 sc.pl.scatter(
46 @CMD_param_plot_inputs@ 49 @CMD_PARAM_PLOT_INPUTS@
47 #if $method.type.type == 'xy': 50 #if str($method.type.type) == 'xy':
48 x=x_field, 51 x=x_field,
49 y=y_field, 52 y=y_field,
50 #if $method.type.color 53 #if str($method.type.color) != '':
51 color='$method.type.color', 54 color='$method.type.color',
52 #end if 55 #end if
53 #if str('$method.type.layers.use_layers') == 'true' 56 #if str('$method.type.layers.use_layers') == 'true':
54 layers=('$method.type.layers.layer_x', '$method.type.layers.layer_y', '$method.type.layers.layer_color'), 57 layers=('$method.type.layers.layer_x', '$method.type.layers.layer_y', '$method.type.layers.layer_color'),
55 #end if 58 #end if
56 #else 59 #else if str($method.type.type) == 'basis':
57 basis='$method.type.basis', 60 basis='$method.type.basis',
58 #if $method.type.color 61 #if str($method.type.color) != '':
59 #set $color = ([x.strip() for x in str($method.type.color).split(',')]) 62 #set $color = ([x.strip() for x in str($method.type.color).split(',')])
60 color=$color, 63 color=$color,
61 #end if 64 #end if
62 #end if 65 #end if
63 use_raw=$method.use_raw, 66 use_raw=$method.use_raw,
64 sort_order=$method.sort_order, 67 sort_order=$method.sort_order,
65 @CMD_params_groups@ 68 @CMD_PARAM_GROUPS@
66 @CMD_params_pl_components@ 69 @CMD_PARAM_PL_COMPONENTS@
67 projection='$method.plot.projection', 70 projection='$method.plot.projection',
71 #if str($method.plot.legend_loc) != '':
68 legend_loc='$method.plot.legend_loc', 72 legend_loc='$method.plot.legend_loc',
69 #if $method.plot.palette 73 #end if
74 @CMD_PARAM_LEGEND_FONTSIZE@
75 legend_fontweight='$method.plot.legend_fontweight',
76 #if $method.plot.color_map:
77 color_map='$method.plot.color_map',
78 #end if
79 #if $method.plot.palette:
70 palette=['$method.plot.palette'], 80 palette=['$method.plot.palette'],
71 #end if 81 #end if
72 #if $method.plot.color_map 82 frameon=$method.plot.frameon,
73 color_map='$method.plot.color_map', 83 @CMD_PARAM_SIZE@
74 #end if 84 @CMD_PARAM_TITLE@
75 @CMD_param_legend_fontsize@ 85 @CMD_SHOW_NONE@)
76 legend_fontweight='$method.plot.legend_fontweight', 86
77 @CMD_param_title@ 87 #else if str($method.method) == 'pl.heatmap':
78 @CMD_param_size@ 88 @CMD_VAR_NAMES_HEADER_CHECK@
79 frameon=$method.plot.frameon)
80
81 #else if $method.method == 'pl.heatmap'
82 @CMD_var_names_header_check@
83 sc.pl.heatmap( 89 sc.pl.heatmap(
84 @CMD_param_plot_inputs@ 90 @CMD_PARAM_PLOT_INPUTS@
85 #if $method.gene_symbols 91 @CMD_PARAMS_INPUTS@
86 gene_symbols='$method.gene_symbols', 92 @CMD_PARAM_GENE_SYMBOLS@
87 #end if 93 @CMD_PARAMS_PLOTS@
88 @CMD_params_inputs@ 94 @CMD_PARAMS_PL_HEATMAP@
89 @CMD_params_plots@ 95 @CMD_SHOW_NONE@)
90 @CMD_pl_heatmap@) 96
91 97 #else if str($method.method) == 'pl.dotplot':
92 #else if $method.method == 'pl.dotplot' 98 @CMD_VAR_NAMES_HEADER_CHECK@
93 @CMD_var_names_header_check@
94 sc.pl.dotplot( 99 sc.pl.dotplot(
95 @CMD_param_plot_inputs@ 100 @CMD_PARAM_PLOT_INPUTS@
96 #if $method.gene_symbols 101 @CMD_PARAMS_INPUTS@
97 gene_symbols='$method.gene_symbols', 102 @CMD_PARAM_GENE_SYMBOLS@
98 #end if 103 @CMD_PARAMS_PLOTS@
99 @CMD_params_inputs@ 104 @CMD_PL_DOTPLOT@
100 @CMD_params_plots@ 105 @CMD_SHOW_NONE@)
101 @CMD_pl_dotplot@) 106
102 107 #else if str($method.method) == 'pl.tracksplot':
103 #else if $method.method == 'pl.violin' 108 @CMD_VAR_NAMES_HEADER_CHECK@
109 sc.pl.tracksplot(
110 @CMD_PARAM_PLOT_INPUTS@
111 @CMD_PARAMS_INPUTS@
112 @CMD_PARAM_GENE_SYMBOLS@
113 @CMD_PARAMS_PLOTS@
114 @CMD_SHOW_NONE@)
115
116 #else if str($method.method) == 'pl.violin':
104 sc.pl.violin( 117 sc.pl.violin(
105 @CMD_param_plot_inputs@ 118 @CMD_PARAM_PLOT_INPUTS@
106 #if $method.key_variables.type == "var_names" 119 #if str($method.key_variables.type) == 'var_names':
107 #set $key_list = adata.var_names 120 #set $key_list = adata.var_names
108 #else if $method.key_variables.type == "obs" 121 #else if str($method.key_variables.type) == 'obs':
109 #set $key_list = adata.obs.select_dtypes(exclude=['category']).columns 122 #set $key_list = adata.obs.select_dtypes(exclude=['category']).columns
110 #else if $method.key_variables.type == "custom" 123 #else if str($method.key_variables.type) == 'custom':
111 #set $key_list=([x.strip() for x in str($method.key_variables.keys).split(',')]) 124 #set $key_list=([x.strip() for x in str($method.key_variables.keys).split(',')])
112 #end if 125 #end if
113 keys=$key_list, 126 keys=$key_list,
114 #if $method.groupby 127 #if str($method.groupby) != '':
115 groupby='$method.groupby', 128 groupby='$method.groupby',
116 #end if 129 #end if
117 log=$method.log, 130 log=$method.log,
118 use_raw=$method.use_raw, 131 use_raw=$method.use_raw,
119 @CMD_conditional_stripplot@ 132 @CMD_CONDITIONAL_STRIPPLOT@
120 multi_panel=$method.violin_plot.multi_panel.multi_panel, 133 multi_panel=$method.violin_plot.multi_panel.multi_panel,
121 #if $method.violin_plot.multi_panel.multi_panel == "True" and str($method.violin_plot.multi_panel.width) != '' and str($method.violin_plot.multi_panel.height) != '' 134 ##if $method.violin_plot.multi_panel.multi_panel == "True" and str($method.violin_plot.multi_panel.width) != '' and str($method.violin_plot.multi_panel.height) != ''
122 figsize=($method.violin_plot.multi_panel.width, $method.violin_plot.multi_panel.height), 135 ##figsize=($method.violin_plot.multi_panel.width, $method.violin_plot.multi_panel.height),
123 #end if 136 ##end if
124 scale='$method.violin_plot.scale', 137 #if str($method.xlabel) != '':
125 #if $method.xlabel
126 xlabel='$method.xlabel', 138 xlabel='$method.xlabel',
127 #end if 139 #end if
128 #if str($method.rotation) != '' 140 #if str($method.rotation) != '':
129 rotation=$method.rotation, 141 rotation=$method.rotation,
130 #end if 142 #end if
131 @CMD_params_seaborn_violinplot@) 143 @CMD_PARAMS_SEABORN_VIOLINPLOT@
132 144 @CMD_PARAM_LAYER@
133 #else if $method.method == 'pl.stacked_violin' 145 @CMD_SHOW_NONE@)
134 @CMD_var_names_header_check@ 146
147 #else if str($method.method) == 'pl.stacked_violin':
148 @CMD_VAR_NAMES_HEADER_CHECK@
135 sc.pl.stacked_violin( 149 sc.pl.stacked_violin(
136 @CMD_param_plot_inputs@ 150 @CMD_PARAM_PLOT_INPUTS@
137 #if $method.gene_symbols 151 @CMD_PARAMS_INPUTS@
138 gene_symbols='$method.gene_symbols', 152 @CMD_PARAM_GENE_SYMBOLS@
139 #end if 153 @CMD_PARAMS_PLOTS@
140 @CMD_params_inputs@ 154 @CMD_PARAMS_PL_STACKED_VIOLIN@
141 @CMD_params_plots@ 155 @CMD_SHOW_NONE@)
142 @CMD_pl_stacked_violin@) 156
143 157 #else if str($method.method) == 'pl.matrixplot':
144 #else if $method.method == 'pl.matrixplot' 158 @CMD_VAR_NAMES_HEADER_CHECK@
145 @CMD_var_names_header_check@
146 sc.pl.matrixplot( 159 sc.pl.matrixplot(
147 @CMD_param_plot_inputs@ 160 @CMD_PARAM_PLOT_INPUTS@
148 #if $method.gene_symbols 161 @CMD_PARAMS_INPUTS@
149 gene_symbols='$method.gene_symbols', 162 @CMD_PARAM_GENE_SYMBOLS@
150 #end if 163 @CMD_PARAMS_PLOTS@
151 @CMD_params_inputs@ 164 @CMD_PARAMS_PL_MATRIXPLOT@
152 @CMD_params_plots@ 165 @CMD_SHOW_NONE@)
153 @CMD_pl_matrixplot@) 166
154 167 #else if str($method.method) == 'pl.clustermap':
155 #else if $method.method == 'pl.clustermap'
156 sc.pl.clustermap( 168 sc.pl.clustermap(
157 #if str($method.use_raw) == 'True' 169 #if str($method.use_raw) == 'True':
158 adata=adata.X, 170 adata=adata.X,
159 #else 171 #else
160 adata=adata, 172 adata=adata,
161 #end if 173 #end if
162 show=False, 174 #if str($method.obs_keys) != '':
163 #if $method.obs_keys
164 obs_keys='$method.obs_keys', 175 obs_keys='$method.obs_keys',
165 #end if 176 #end if
166 use_raw=$method.use_raw, 177 use_raw=$method.use_raw,
167 method='$method.seaborn_clustermap.method', 178 method='$method.seaborn_clustermap.method',
168 metric='$method.seaborn_clustermap.metric', 179 metric='$method.seaborn_clustermap.metric',
169 #if str($method.seaborn_clustermap.z_score) != 'None' 180 #if str($method.seaborn_clustermap.z_score) != 'None':
170 z_score=$method.seaborn_clustermap.z_score, 181 z_score=$method.seaborn_clustermap.z_score,
171 #end if 182 #end if
172 #if str($method.seaborn_clustermap.standard_scale) != 'None' 183 #if str($method.seaborn_clustermap.standard_scale) != 'None':
173 standard_scale=$method.seaborn_clustermap.standard_scale, 184 standard_scale=$method.seaborn_clustermap.standard_scale,
174 #end if 185 #end if
175 col_cluster=$method.seaborn_clustermap.col_cluster, 186 col_cluster=$method.seaborn_clustermap.col_cluster,
176 row_cluster=$method.seaborn_clustermap.row_cluster).savefig(fname="output.$format") 187 row_cluster=$method.seaborn_clustermap.row_cluster,
177 188 save='.$format',
178 #else if $method.method == 'pl.highest_expr_genes' 189 @CMD_SHOW_NONE@)
190
191 #else if str($method.method) == 'pl.highest_expr_genes':
179 sc.pl.highest_expr_genes( 192 sc.pl.highest_expr_genes(
180 @CMD_param_plot_inputs@ 193 @CMD_PARAM_PLOT_INPUTS@
181 n_top=$method.n_top, 194 n_top=$method.n_top,
182 #if $method.gene_symbols 195 @CMD_PARAM_GENE_SYMBOLS@
183 gene_symbols='$method.gene_symbols', 196 #if str($method.setseaborn_boxplot.color) != '':
184 #end if
185 #if $method.setseaborn_boxplot.color
186 color='$method.setseaborn_boxplot.color', 197 color='$method.setseaborn_boxplot.color',
187 #end if 198 #end if
188 #if $method.setseaborn_boxplot.palette 199 #if $method.setseaborn_boxplot.palette:
189 palette='$method.setseaborn_boxplot.palette', 200 palette='$method.setseaborn_boxplot.palette',
190 #end if 201 #end if
191 saturation=$method.setseaborn_boxplot.saturation) 202 saturation=$method.setseaborn_boxplot.saturation,
192 203 @CMD_SHOW_NONE@)
193 #else if $method.method == 'pl.highly_variable_genes' 204
205 #else if str($method.method) == 'pl.highly_variable_genes':
194 sc.pl.highly_variable_genes( 206 sc.pl.highly_variable_genes(
195 adata_or_result=adata, 207 adata_or_result=adata,
196 log=$method.log, 208 log=$method.log,
197 save='.$format', 209 save='.$format',
198 show=False, 210 highly_variable_genes=$method.highly_variable_genes,
199 highly_variable_genes=$method.highly_variable_genes) 211 @CMD_SHOW_NONE@)
200 212
201 #else if $method.method == 'pl.pca' 213 #else if str($method.method) == 'pl.scrublet_score_distribution':
214 sc.pl.scrublet_score_distribution(
215 adata=adata,
216 scale_hist_obs='$method.scale_hist_obs',
217 scale_hist_sim='$method.scale_hist_sim',
218 @CMD_PARAMS_FIGSIZE@
219 save='.$format',
220 @CMD_SHOW_NONE@)
221
222 #else if str($method.method) == 'pl.pca':
202 sc.pl.pca( 223 sc.pl.pca(
203 @CMD_param_plot_inputs@ 224 @CMD_PARAM_PLOT_INPUTS@
204 @CMD_param_color@ 225 @CMD_PARAM_COLOR@
205 use_raw=$method.use_raw, 226 use_raw=$method.use_raw,
206 sort_order=$method.sort_order, 227 sort_order=$method.sort_order,
207 @CMD_params_groups@ 228 @CMD_PARAM_GROUPS@
208 @CMD_params_pl_components@ 229 @CMD_PARAMS_PL_ATTRIBUTE_SECTION@
209 @CMD_pl_attribute_section@ 230 @CMD_SCATTER_OUTINE@
210 @CMD_params_matplotlib_pyplot_scatter@) 231 @CMD_SECTION_MATPLOTLIB_PYPLOT_SCATTER@
211 232 @CMD_PARAM_LAYER@
212 #else if $method.method == 'pl.pca_loadings' 233 @CMD_SHOW_NONE@)
234
235 #else if str($method.method) == 'pl.pca_loadings':
213 sc.pl.pca_loadings( 236 sc.pl.pca_loadings(
214 @CMD_param_plot_inputs@ 237 @CMD_PARAM_PLOT_INPUTS@
215 #set $components = ([int(x.strip()) for x in str($method.components).split(',')]) 238 #set $components = ([int(x.strip()) for x in str($method.components).split(',')])
216 components=$components) 239 components=$components,
217 240 include_lowest=$method.include_lowest,
218 #else if $method.method == 'pl.pca_variance_ratio' 241 #if str($method.n_points) != '':
242 n_points=$method.n_points,
243 #end if
244 @CMD_SHOW_NONE@)
245
246 #else if str($method.method) == 'pl.pca_variance_ratio':
219 sc.pl.pca_variance_ratio( 247 sc.pl.pca_variance_ratio(
220 @CMD_param_plot_inputs@ 248 @CMD_PARAM_PLOT_INPUTS@
221 n_pcs=$method.n_pcs, 249 n_pcs=$method.n_pcs,
222 log=$method.log) 250 log=$method.log,
223 251 @CMD_SHOW_NONE@)
224 #else if $method.method == 'pl.pca_overview' 252
253 #else if str($method.method) == 'pl.pca_overview':
225 sc.pl.pca_overview( 254 sc.pl.pca_overview(
226 @CMD_param_plot_inputs@ 255 @CMD_PARAM_PLOT_INPUTS@
227 @CMD_param_color@ 256 @CMD_PARAM_COLOR@
228 use_raw=$method.use_raw, 257 use_raw=$method.use_raw,
229 sort_order=$method.sort_order, 258 sort_order=$method.sort_order,
230 @CMD_params_groups@ 259 @CMD_PARAM_GROUPS@
231 @CMD_params_pl_components@ 260 @CMD_PARAMS_PL_ATTRIBUTE_SECTION@
232 @CMD_pl_attribute_section@ 261 @CMD_SCATTER_OUTINE@
233 @CMD_params_matplotlib_pyplot_scatter@) 262 @CMD_SECTION_MATPLOTLIB_PYPLOT_SCATTER@
234 263 @CMD_SHOW_NONE@)
235 #else if $method.method == 'pl.tsne' 264
265 #else if str($method.method) == 'pl.tsne':
236 sc.pl.tsne( 266 sc.pl.tsne(
237 @CMD_param_plot_inputs@ 267 @CMD_PARAM_PLOT_INPUTS@
238 @CMD_param_color@ 268 @CMD_PARAM_COLOR@
269 @CMD_PARAM_GENE_SYMBOLS@
239 use_raw=$method.use_raw, 270 use_raw=$method.use_raw,
240 @CMD_pl_edges@ 271 @CMD_PL_EDGES@
241 arrows=$method.arrows, 272 arrows=$method.arrows,
242 sort_order=$method.sort_order, 273 sort_order=$method.sort_order,
243 @CMD_params_groups@ 274 @CMD_PARAM_GROUPS@
244 @CMD_params_pl_components@ 275 @CMD_PARAMS_PL_ATTRIBUTE_SECTION@
245 @CMD_pl_attribute_section@ 276 @CMD_SCATTER_OUTINE@
246 @CMD_params_matplotlib_pyplot_scatter@) 277 @CMD_SECTION_MATPLOTLIB_PYPLOT_SCATTER@
247 278 @CMD_PARAM_LAYER@
248 #else if $method.method == 'pl.umap' 279 @CMD_SHOW_NONE@)
280
281 #else if str($method.method) == 'pl.umap':
249 sc.pl.umap( 282 sc.pl.umap(
250 @CMD_param_plot_inputs@ 283 @CMD_PARAM_PLOT_INPUTS@
251 @CMD_param_color@ 284 @CMD_PARAM_COLOR@
252 use_raw=$method.use_raw, 285 use_raw=$method.use_raw,
253 @CMD_pl_edges@ 286 @CMD_PL_EDGES@
254 arrows=$method.arrows, 287 arrows=$method.arrows,
255 sort_order=$method.sort_order, 288 sort_order=$method.sort_order,
256 @CMD_params_groups@ 289 @CMD_PARAM_GROUPS@
257 @CMD_params_pl_components@ 290 @CMD_PARAMS_PL_ATTRIBUTE_SECTION@
258 @CMD_pl_attribute_section@ 291 @CMD_SCATTER_OUTINE@
259 @CMD_params_matplotlib_pyplot_scatter@) 292 @CMD_SECTION_MATPLOTLIB_PYPLOT_SCATTER@
260 293 @CMD_PARAM_LAYER@
261 #else if $method.method == 'pl.diffmap' 294 @CMD_SHOW_NONE@)
295
296 #else if str($method.method) == 'pl.diffmap':
262 sc.pl.diffmap( 297 sc.pl.diffmap(
263 @CMD_param_plot_inputs@ 298 @CMD_PARAM_PLOT_INPUTS@
264 @CMD_param_color@ 299 @CMD_PARAM_COLOR@
265 use_raw=$method.use_raw, 300 use_raw=$method.use_raw,
266 sort_order=$method.sort_order, 301 sort_order=$method.sort_order,
267 @CMD_params_groups@ 302 @CMD_PARAM_GROUPS@
268 @CMD_params_pl_components@ 303 @CMD_PARAMS_PL_ATTRIBUTE_SECTION@
269 @CMD_pl_attribute_section@ 304 @CMD_SCATTER_OUTINE@
270 @CMD_params_matplotlib_pyplot_scatter@) 305 @CMD_SECTION_MATPLOTLIB_PYPLOT_SCATTER@
271 306 @CMD_PARAM_LAYER@
272 #else if $method.method == 'pl.draw_graph' 307 @CMD_SHOW_NONE@)
308
309 #else if str($method.method) == 'pl.draw_graph':
273 sc.pl.draw_graph( 310 sc.pl.draw_graph(
274 @CMD_param_plot_inputs@ 311 @CMD_PARAM_PLOT_INPUTS@
275 @CMD_param_color@ 312 @CMD_PARAM_COLOR@
276 #if $method.gene_symbols 313 @CMD_PARAM_GENE_SYMBOLS@
277 gene_symbols='$method.gene_symbols',
278 #end if
279 use_raw=$method.use_raw, 314 use_raw=$method.use_raw,
280 layout='$method.layout', 315 layout='$method.layout',
281 edges=$method.edges.edges, 316 @CMD_PL_EDGES@
282 #if str($method.edges.edges) == 'True'
283 edges_width=$method.edges.edges_width,
284 edges_color='$method.edges.edges_color',
285 #end if
286 arrows=$method.arrows, 317 arrows=$method.arrows,
287 sort_order=$method.sort_order, 318 sort_order=$method.sort_order,
288 @CMD_params_groups@ 319 @CMD_PARAM_GROUPS@
289 @CMD_params_pl_components@ 320 @CMD_PARAMS_PL_ATTRIBUTE_SECTION@
290 @CMD_pl_attribute_section@ 321 @CMD_SCATTER_OUTINE@
291 @CMD_params_matplotlib_pyplot_scatter@) 322 @CMD_SECTION_MATPLOTLIB_PYPLOT_SCATTER@
292 323 @CMD_PARAM_LAYER@
293 #else if $method.method == 'pl.embedding_density' 324 @CMD_SHOW_NONE@)
325
326 #else if str($method.method) == 'pl.embedding_density':
294 sc.pl.embedding_density( 327 sc.pl.embedding_density(
295 @CMD_param_plot_inputs@ 328 @CMD_PARAM_PLOT_INPUTS@
296 basis='$method.basis', 329 basis='$method.basis',
297 #if $method.key 330 #if str($method.key) != '':
298 key='$method.key', 331 key='$method.key',
299 #end if 332 #end if
300 #if $method.groupby 333 #if str($method.groupby) != '':
301 groupby='$method.groupby', 334 groupby='$method.groupby',
302 #end if 335 #end if
303 #if $method.group 336 #if str($method.group) != '':
304 #set $group = ([x.strip() for x in str($method.group).split(',')]) 337 #set $group = ([x.strip() for x in str($method.group).split(',')])
305 group=$group, 338 group=$group,
306 #end if 339 #end if
307 #if $method.color_map 340 #if $method.color_map:
308 color_map='$method.color_map', 341 color_map='$method.color_map',
309 #end if 342 #end if
310 bg_dotsize=$method.bg_dotsize, 343 bg_dotsize=$method.bg_dotsize,
311 fg_dotsize=$method.fg_dotsize, 344 fg_dotsize=$method.fg_dotsize,
312 ncols=$method.ncols, 345 ncols=$method.ncols,
313 wspace=$method.wspace, 346 wspace=$method.wspace,
314 hspace=$method.hspace) 347 hspace=$method.hspace,
315 348 @CMD_SHOW_NONE@)
316 #else if $method.method == 'pl.dpt_groups_pseudotime' 349
317 sc.pl.dpt_groups_pseudotime( 350
318 @CMD_param_plot_inputs@ 351
319 #if $method.color_map 352 #else if str($method.method) == 'pl.dpt_timeseries':
320 color_map='$method.color_map'
321 #end if
322 )
323
324 #else if $method.method == 'pl.dpt_timeseries'
325 sc.pl.dpt_timeseries( 353 sc.pl.dpt_timeseries(
326 @CMD_param_plot_inputs@ 354 @CMD_PARAM_PLOT_INPUTS@
327 #if $method.heatmap.as_heatmap == "True" 355 #if str($method.heatmap.as_heatmap) == 'True'
328 #if $method.heatmap.color_map 356 #if $method.heatmap.color_map
329 color_map='$method.heatmap.color_map', 357 color_map='$method.heatmap.color_map',
330 #end if 358 #end if
331 #end if 359 #end if
332 as_heatmap=$method.heatmap.as_heatmap) 360 as_heatmap=$method.heatmap.as_heatmap,
333 361 @CMD_SHOW_NONE@)
334 #else if $method.method == 'pl.paga' 362
363 #else if str($method.method) == 'pl.paga':
335 sc.pl.paga( 364 sc.pl.paga(
336 @CMD_param_plot_inputs@ 365 @CMD_PARAM_PLOT_INPUTS@
337 @CMD_params_pl_paga@) 366 @CMD_PARAMS_PL_PAGA@
338 367 @CMD_SHOW_NONE@)
339 #else if $method.method == 'pl.paga_compare' 368
369 #else if str($method.method) == 'pl.paga_compare':
340 sc.pl.paga_compare( 370 sc.pl.paga_compare(
341 @CMD_param_plot_inputs@ 371 @CMD_PARAM_PLOT_INPUTS@
342 @CMD_params_pl_paga@) 372 @CMD_PARAMS_PL_PAGA@
343 373 @CMD_PARAM_PL_COMPONENTS@
344 #else if $method.method == 'pl.paga_path' 374 projection='$method.plot.projection',
375 #if str($method.plot.legend_loc) != '':
376 legend_loc='$method.plot.legend_loc',
377 #end if
378 @CMD_PARAM_LEGEND_FONTSIZE@
379 legend_fontweight='$method.plot.legend_fontweight',
380 #if $method.plot.color_map:
381 color_map='$method.plot.color_map',
382 #end if
383 #if $method.plot.palette:
384 palette=['$method.plot.palette'],
385 #end if
386 @CMD_PARAM_SIZE@
387 @CMD_PARAM_TITLE@
388 @CMD_SHOW_NONE@)
389
390 #else if str($method.method) == 'pl.paga_path':
345 sc.pl.paga_path( 391 sc.pl.paga_path(
346 @CMD_param_plot_inputs@ 392 @CMD_PARAM_PLOT_INPUTS@
347 #set $nodes = ([int(x.strip()) for x in str($method.nodes).split(',')]) 393 #set $nodes = ([int(x.strip()) for x in str($method.nodes).split(',')])
348 nodes=$nodes, 394 nodes=$nodes,
349 #set $keys=([x.strip() for x in str($method.keys).split(',')]) 395 #set $keys=([x.strip() for x in str($method.keys).split(',')])
350 keys=$keys, 396 keys=$keys,
351 use_raw=$method.use_raw, 397 use_raw=$method.use_raw,
352 #if $method.annotations 398 #if str($method.annotations) != '':
353 #set $annotations=([x.strip() for x in str($method.annotations).split(',')]) 399 #set $annotations=([x.strip() for x in str($method.annotations).split(',')])
354 annotations=$annotations, 400 annotations=$annotations,
355 #end if 401 #end if
356 #if $method.color_map 402 #if $method.color_map:
357 color_map='$method.color_map', 403 color_map='$method.color_map',
358 #end if 404 #end if
359 n_avg=$method.n_avg, 405 n_avg=$method.n_avg,
360 #if $method.annotations 406 #if str($method.annotations) != '':
361 groups_key='$method.groups_key', 407 groups_key='$method.groups_key',
362 #end if 408 #end if
363 as_heatmap=$method.as_heatmap, 409 as_heatmap=$method.as_heatmap,
364 show_node_names=$method.show_node_names, 410 show_node_names=$method.show_node_names,
365 show_colorbar=$method.show_colorbar, 411 show_colorbar=$method.show_colorbar,
366 show_yticks=$method.show_yticks, 412 show_yticks=$method.show_yticks,
367 normalize_to_zero_one=$method.normalize_to_zero_one) 413 normalize_to_zero_one=$method.normalize_to_zero_one,
368 414 @CMD_SHOW_NONE@)
369 #else if $method.method == 'pl.rank_genes_groups' 415
416 #else if str($method.method) == 'pl.rank_genes_groups':
370 sc.pl.rank_genes_groups( 417 sc.pl.rank_genes_groups(
371 @CMD_param_plot_inputs@ 418 @CMD_PARAM_PLOT_INPUTS@
372 @CMD_params_groups@ 419 @CMD_PARAM_GROUPS@
373 n_genes=$method.n_genes, 420 n_genes=$method.n_genes,
374 #if $method.gene_symbols 421 @CMD_PARAM_GENE_SYMBOLS@
375 gene_symbols='$method.gene_symbols',
376 #end if
377 fontsize=$method.fontsize, 422 fontsize=$method.fontsize,
378 ncols=$method.ncols, 423 ncols=$method.ncols,
379 sharey=$method.sharey) 424 sharey=$method.sharey,
425 @CMD_SHOW_NONE@)
380 426
381 #else if $method.method == 'pl.rank_genes_groups_violin' 427 #else if $method.method == 'pl.rank_genes_groups_violin'
382 sc.pl.rank_genes_groups_violin( 428 sc.pl.rank_genes_groups_violin(
383 @CMD_param_plot_inputs@ 429 @CMD_PARAM_PLOT_INPUTS@
384 @CMD_params_groups@ 430 @CMD_PARAM_GROUPS@
385 #if $method.genes.select == 'n_genes' 431 #if str($method.genes.select) == 'n_genes':
386 n_genes=$method.genes.n_genes, 432 n_genes=$method.genes.n_genes,
387 #else 433 #else
388 #set $gene_names = ([x.strip() for x in str($method.genes.gene_names).split(',')]) 434 #set $gene_names = ([x.strip() for x in str($method.genes.gene_names).split(',')])
389 gene_names=$gene_names, 435 gene_names=$gene_names,
390 #end if 436 #end if
391 #if $method.gene_symbols 437 @CMD_PARAM_GENE_SYMBOLS@
392 gene_symbols='$method.gene_symbols',
393 #end if
394 use_raw=$method.use_raw, 438 use_raw=$method.use_raw,
395 split=$method.split, 439 split=$method.split,
396 strip=$method.violin_plot.stripplot.stripplot, 440 strip=$method.violin_plot.stripplot.stripplot,
397 #if $method.violin_plot.stripplot.stripplot == "True" 441 #if str($method.violin_plot.stripplot.stripplot) == 'True':
398 jitter=$method.violin_plot.stripplot.jitter.jitter, 442 jitter=$method.violin_plot.stripplot.jitter.jitter,
399 #if $method.violin_plot.stripplot.jitter.jitter == "True" 443 #if str($method.violin_plot.stripplot.jitter.jitter) == 'True':
400 size=$method.violin_plot.stripplot.jitter.size, 444 size=$method.violin_plot.stripplot.jitter.size,
401 #end if 445 #end if
402 #end if 446 #end if
403 scale='$method.violin_plot.scale') 447 density_norm='$method.violin_plot.density_norm',
404 448 @CMD_SHOW_NONE@)
405 #else if $method.method == 'pl.rank_genes_groups_dotplot' 449
406 450 #else if str($method.method) == 'pl.rank_genes_groups_stacked_violin':
407 @CMD_var_names_header_check@ 451 @CMD_VAR_NAMES_HEADER_CHECK@
408 452 sc.pl.rank_genes_groups_stacked_violin(
453 @CMD_PARAM_PLOT_INPUTS@
454 @CMD_PL_RANK_GENES_GROUPS_EXT@
455 @CMD_PARAMS_PLOTS@
456 @CMD_PARAM_GENE_SYMBOLS@
457 @CMD_PARAMS_PL_STACKED_VIOLIN@
458 @CMD_SHOW_NONE@)
459
460 #else if str($method.method) == 'pl.rank_genes_groups_heatmap':
461 @CMD_VAR_NAMES_HEADER_CHECK@
462 sc.pl.rank_genes_groups_heatmap(
463 @CMD_PARAM_PLOT_INPUTS@
464 @CMD_PL_RANK_GENES_GROUPS_EXT@
465 @CMD_PARAMS_PLOTS@
466 @CMD_PARAM_GENE_SYMBOLS@
467 @CMD_PARAMS_PL_HEATMAP@
468 @CMD_SHOW_NONE@)
469
470 #else if str($method.method) == 'pl.rank_genes_groups_dotplot':
471 @CMD_VAR_NAMES_HEADER_CHECK@
409 sc.pl.rank_genes_groups_dotplot( 472 sc.pl.rank_genes_groups_dotplot(
410 @CMD_param_plot_inputs@ 473 @CMD_PARAM_PLOT_INPUTS@
411 #if $method.var_names.type == 'custom' 474 @CMD_PL_RANK_GENES_GROUPS_EXT@
412 #set $var_names = ([x.strip() for x in str($method.var_names.var_names).split(',')]) 475 @CMD_PARAMS_PLOTS@
413 var_names=$var_names, 476 @CMD_PARAM_GENE_SYMBOLS@
414 #else if $method.var_names.type == 'customfile' 477 @CMD_PL_DOTPLOT@
415 var_names={key: [v for v in list(value.values()) if pd.notna(v)] for key, value in pd.read_csv('$var_names', sep='\t', index_col=0, header=header).to_dict(orient='index').items()}, 478 @CMD_VALUES_TO_PLOT@
416 #else 479 @CMD_SHOW_NONE@)
417 n_genes=$method.n_genes, 480
418 #end if 481 #else if str($method.method) == 'pl.rank_genes_groups_matrixplot':
419 #if $method.groupby != '' 482 @CMD_VAR_NAMES_HEADER_CHECK@
420 groupby='$method.groupby',
421 #end if
422 num_categories=$method.num_categories,
423 #if $method.key != ''
424 key='$method.key',
425 #end if
426 #if $method.gene_symbols
427 gene_symbols='$method.gene_symbols',
428 #end if
429 @CMD_params_plots@
430 @CMD_pl_dotplot@)
431
432 #else if $method.method == 'pl.rank_genes_groups_heatmap'
433 sc.pl.rank_genes_groups_heatmap(
434 @CMD_param_plot_inputs@
435 @CMD_pl_rank_genes_groups_ext@
436 @CMD_params_plots@
437 #if $method.gene_symbols
438 gene_symbols='$method.gene_symbols',
439 #end if
440 @CMD_pl_heatmap@)
441
442 #else if $method.method == 'pl.rank_genes_groups_matrixplot'
443 sc.pl.rank_genes_groups_matrixplot( 483 sc.pl.rank_genes_groups_matrixplot(
444 @CMD_param_plot_inputs@ 484 @CMD_PARAM_PLOT_INPUTS@
445 @CMD_pl_rank_genes_groups_ext@ 485 @CMD_PL_RANK_GENES_GROUPS_EXT@
446 @CMD_params_plots@ 486 @CMD_PARAMS_PLOTS@
447 #if $method.gene_symbols 487 @CMD_PARAM_GENE_SYMBOLS@
448 gene_symbols='$method.gene_symbols', 488 @CMD_PARAMS_PL_MATRIXPLOT@
449 #end if 489 @CMD_VALUES_TO_PLOT@
450 @CMD_pl_matrixplot@) 490 @CMD_SHOW_NONE@)
451 491
452 #else if $method.method == 'pl.rank_genes_groups_stacked_violin' 492 #else if str($method.method) == 'pl.rank_genes_groups_tracksplot':
453 sc.pl.rank_genes_groups_stacked_violin( 493 @CMD_VAR_NAMES_HEADER_CHECK@
454 @CMD_param_plot_inputs@ 494 sc.pl.rank_genes_groups_tracksplot(
455 @CMD_pl_rank_genes_groups_ext@ 495 @CMD_PARAM_PLOT_INPUTS@
456 @CMD_params_plots@ 496 @CMD_PL_RANK_GENES_GROUPS_EXT@
457 #if $method.gene_symbols 497 @CMD_PARAMS_PLOTS@
458 gene_symbols='$method.gene_symbols', 498 @CMD_PARAM_GENE_SYMBOLS@
459 #end if 499 @CMD_PARAMS_PL_HEATMAP@
460 @CMD_pl_stacked_violin@) 500 @CMD_SHOW_NONE@)
461 501
462 #end if 502 #end if
463 ]]></configfile> 503 ]]></configfile>
464 </configfiles> 504 </configfiles>
465 <inputs> 505 <inputs>
468 <conditional name="method"> 508 <conditional name="method">
469 <param argument="method" type="select" label="Method used for plotting"> 509 <param argument="method" type="select" label="Method used for plotting">
470 <option value="pl.scatter">Generic: Scatter plot along observations or variables axes, using 'pl.scatter'</option> 510 <option value="pl.scatter">Generic: Scatter plot along observations or variables axes, using 'pl.scatter'</option>
471 <option value="pl.heatmap">Generic: Heatmap of the expression values of set of genes, using 'pl.heatmap'</option> 511 <option value="pl.heatmap">Generic: Heatmap of the expression values of set of genes, using 'pl.heatmap'</option>
472 <option value="pl.dotplot">Generic: Makes a dot plot of the expression values, using 'pl.dotplot'</option> 512 <option value="pl.dotplot">Generic: Makes a dot plot of the expression values, using 'pl.dotplot'</option>
513 <option value="pl.tracksplot">Generic: Makes a tracks plot of the expression values per cell, using 'pl.tracksplot'</option>
473 <option value="pl.violin">Generic: Violin plot, using 'pl.violin'</option> 514 <option value="pl.violin">Generic: Violin plot, using 'pl.violin'</option>
474 <option value="pl.stacked_violin">Generic: Stacked violin plots, using 'pl.stacked_violin'</option> 515 <option value="pl.stacked_violin">Generic: Stacked violin plots, using 'pl.stacked_violin'</option>
475 <option value="pl.matrixplot">Generic: Heatmap of the mean expression values per cluster, using 'pl.matrixplot'</option> 516 <option value="pl.matrixplot">Generic: Heatmap of the mean expression values per cluster, using 'pl.matrixplot'</option>
476 <option value="pl.clustermap">Generic: Hierarchically-clustered heatmap, using 'pl.clustermap'</option> 517 <option value="pl.clustermap">Generic: Hierarchically-clustered heatmap, using 'pl.clustermap'</option>
477 <option value="pl.highest_expr_genes">Preprocessing: Plot the fraction of counts assigned to each gene over all cells, using 'pl.highest_expr_genes'</option> 518 <option value="pl.highest_expr_genes">Preprocessing: Plot the fraction of counts assigned to each gene over all cells, using 'pl.highest_expr_genes'</option>
478 <!--<option value="pl.filter_genes_dispersion">Preprocessing: Plot dispersions versus means for genes, using 'pl.filter_genes_dispersion'</option>-->
479 <option value="pl.highly_variable_genes">Preprocessing: Plot dispersions versus means for genes, using 'pl.highly_variable_genes'</option> 519 <option value="pl.highly_variable_genes">Preprocessing: Plot dispersions versus means for genes, using 'pl.highly_variable_genes'</option>
520 <option value="pl.scrublet_score_distribution">Preprocessing: Plot histogram of doublet scores, using 'pl.scrublet_score_distribution'</option>
480 <option value="pl.pca">PCA: Scatter plot in PCA coordinates, using 'pl.pca'</option> 521 <option value="pl.pca">PCA: Scatter plot in PCA coordinates, using 'pl.pca'</option>
481 <option value="pl.pca_loadings">PCA: Rank genes according to contributions to PCs, using 'pl.pca_loadings'</option> 522 <option value="pl.pca_loadings">PCA: Rank genes according to contributions to PCs, using 'pl.pca_loadings'</option>
482 <option value="pl.pca_variance_ratio">PCA: Scatter plot in PCA coordinates, using 'pl.pca_variance_ratio'</option> 523 <option value="pl.pca_variance_ratio">PCA: Scatter plot in PCA coordinates, using 'pl.pca_variance_ratio'</option>
483 <option value="pl.pca_overview">PCA: Plot PCA results, using 'pl.pca_overview'</option> 524 <option value="pl.pca_overview">PCA: Plot PCA results, using 'pl.pca_overview'</option>
484 <option value="pl.tsne">Embeddings: Scatter plot in tSNE basis, using 'pl.tsne'</option> 525 <option value="pl.tsne">Embeddings: Scatter plot in tSNE basis, using 'pl.tsne'</option>
485 <option value="pl.umap">Embeddings: Scatter plot in UMAP basis, using 'pl.umap'</option> 526 <option value="pl.umap">Embeddings: Scatter plot in UMAP basis, using 'pl.umap'</option>
486 <option value="pl.diffmap">Embeddings: Scatter plot in Diffusion Map basis, using 'pl.diffmap'</option> 527 <option value="pl.diffmap">Embeddings: Scatter plot in Diffusion Map basis, using 'pl.diffmap'</option>
487 <option value="pl.draw_graph">Embeddings: Scatter plot in graph-drawing basis, using 'pl.draw_graph'</option> 528 <option value="pl.draw_graph">Embeddings: Scatter plot in graph-drawing basis, using 'pl.draw_graph'</option>
488 <option value="pl.embedding_density">Embeddings: Plot the density of cells in an embedding (per condition), using 'pl.embedding_density'</option> 529 <option value="pl.embedding_density">Embeddings: Plot the density of cells in an embedding (per condition), using 'pl.embedding_density'</option>
489 <option value="pl.dpt_groups_pseudotime">Branching trajectories and pseudotime, clustering: Plot groups and pseudotime, using 'pl.dpt_groups_pseudotime'</option> 530 <!-- This function is commented out because it is not compatible with pandas version. If the issue is not resolved in the next update, this should be removed. -->
531 <!-- <option value="pl.dpt_groups_pseudotime">Branching trajectories and pseudotime, clustering: Plot groups and pseudotime, using 'pl.dpt_groups_pseudotime'</option> -->
490 <option value="pl.dpt_timeseries">Branching trajectories and pseudotime, clustering: Heatmap of pseudotime series, using 'pl.dpt_timeseries'</option> 532 <option value="pl.dpt_timeseries">Branching trajectories and pseudotime, clustering: Heatmap of pseudotime series, using 'pl.dpt_timeseries'</option>
491 <option value="pl.paga">Branching trajectories and pseudotime, clustering: Plot the abstracted graph through thresholding low-connectivity edges, using 'pl.paga'</option> 533 <option value="pl.paga">Branching trajectories and pseudotime, clustering: Plot the abstracted graph through thresholding low-connectivity edges, using 'pl.paga'</option>
492 <option value="pl.paga_compare">Branching trajectories and pseudotime, clustering: Scatter and PAGA graph side-by-side, using 'pl.paga_compare'</option> 534 <option value="pl.paga_compare">Branching trajectories and pseudotime, clustering: Scatter and PAGA graph side-by-side, using 'pl.paga_compare'</option>
493 <option value="pl.paga_path">Branching trajectories and pseudotime, clustering: Gene expression and annotation changes along paths, using 'pl.paga_path'</option> 535 <option value="pl.paga_path">Branching trajectories and pseudotime, clustering: Gene expression and annotation changes along paths, using 'pl.paga_path'</option>
494 <option value="pl.rank_genes_groups">Marker genes: Plot ranking of genes using dotplot plot, using 'pl.rank_genes_groups'</option> 536 <option value="pl.rank_genes_groups">Marker genes: Plot ranking of genes using dotplot plot, using 'pl.rank_genes_groups'</option>
495 <option value="pl.rank_genes_groups_violin">Marker genes: Plot ranking of genes as violin plot, using 'pl.rank_genes_groups_violin'</option> 537 <option value="pl.rank_genes_groups_violin">Marker genes: Plot ranking of genes as violin plot, using 'pl.rank_genes_groups_violin'</option>
538 <option value="pl.rank_genes_groups_stacked_violin">Marker genes: Plot ranking of genes as stacked violin plot, using 'pl.rank_genes_groups_stacked_violin'</option>
539 <option value="pl.rank_genes_groups_heatmap">Marker genes: Plot ranking of genes as heatmap plot, using 'pl.rank_genes_groups_heatmap'</option>
496 <option value="pl.rank_genes_groups_dotplot">Marker genes: Plot ranking of genes as dotplot plot, using 'pl.rank_genes_groups_dotplot'</option> 540 <option value="pl.rank_genes_groups_dotplot">Marker genes: Plot ranking of genes as dotplot plot, using 'pl.rank_genes_groups_dotplot'</option>
497 <option value="pl.rank_genes_groups_heatmap">Marker genes: Plot ranking of genes as heatmap plot, using 'pl.rank_genes_groups_heatmap'</option>
498 <option value="pl.rank_genes_groups_matrixplot">Marker genes: Plot ranking of genes as matrixplot plot, using 'pl.rank_genes_groups_matrixplot'</option> 541 <option value="pl.rank_genes_groups_matrixplot">Marker genes: Plot ranking of genes as matrixplot plot, using 'pl.rank_genes_groups_matrixplot'</option>
499 <option value="pl.rank_genes_groups_stacked_violin">Marker genes: Plot ranking of genes as stacked violin plot, using 'pl.rank_genes_groups_stacked_violin'</option> 542 <option value="pl.rank_genes_groups_tracksplot">Marker genes: Plot ranking of genes as tracksplot plot, using 'pl.rank_genes_groups_tracksplot'</option>
500 </param> 543 </param>
501 <when value="pl.scatter"> 544 <when value="pl.scatter">
502 <conditional name="type"> 545 <conditional name="type">
503 <param name="type" type="select" label="Plotting tool that computed coordinates" help=""> 546 <param name="type" type="select" label="Plotting tool that computed coordinates">
504 <option value="xy">Using coordinates</option> 547 <option value="xy" selected="true">Using coordinates</option>
505 <option value="basis">Using tool that computes coordinates</option> 548 <option value="basis">Using tool that computes coordinates</option>
506 </param> 549 </param>
507 <when value="xy"> 550 <when value="xy">
508 <param argument="x" type="text" value="" label="x coordinate" help="Index or key from either '.obs' or '.var'"> 551 <param argument="x" type="text" value="" label="x coordinate" help="Index or key from either '.obs' or '.var'">
509 <expand macro="sanitize_query" /> 552 <expand macro="sanitize_query"/>
510 </param> 553 </param>
511 <param argument="y" type="text" value="" label="y coordinate" help="Index or key from either '.obs' or '.var'"> 554 <param argument="y" type="text" value="" label="y coordinate" help="Index or key from either '.obs' or '.var'">
512 <expand macro="sanitize_query" /> 555 <expand macro="sanitize_query"/>
513 </param> 556 </param>
514 <expand macro="param_log"/> 557 <expand macro="param_log"/>
515 <param argument="color" type="text" value="" label="Color by" help="Color points by single variable in `.obs` or `.var`"> 558 <param argument="color" type="text" value="" label="Color by" help="Color points by single variable in `.obs` or `.var`">
516 <expand macro="sanitize_query" /> 559 <expand macro="sanitize_query"/>
517 </param> 560 </param>
518 <conditional name="layers"> 561 <conditional name="layers">
519 <param argument="use_layers" type="select" label="Use the layers attribute?"> 562 <param argument="use_layers" type="select" label="Use the layers attribute?">
563 <option value="false" selected="true">No</option>
520 <option value="true">Yes</option> 564 <option value="true">Yes</option>
521 <option value="false" selected="true">No</option>
522 </param> 565 </param>
523 <when value="true"> 566 <when value="true">
524 <param argument="layer_x" type="text" value="" optional="true" label="Layers for x coordinate" help="Use the 'layers' attribute of 'adata' if present"> 567 <param argument="layer_x" type="text" value="" optional="true" label="Layers for x coordinate" help="Use the 'layers' attribute of 'adata' if present">
525 <expand macro="sanitize_query" /> 568 <expand macro="sanitize_query"/>
526 </param> 569 </param>
527 <param argument="layer_y" type="text" value="" optional="true" label="Layers for y coordinate" help="Use the 'layers' attribute of 'adata' if present"> 570 <param argument="layer_y" type="text" value="" optional="true" label="Layers for y coordinate" help="Use the 'layers' attribute of 'adata' if present">
528 <expand macro="sanitize_query" /> 571 <expand macro="sanitize_query"/>
529 </param> 572 </param>
530 <param argument="layer_color" type="text" value="" optional="true" label="Layers for color" help="Use the 'layers' attribute of 'adata' if present"> 573 <param argument="layer_color" type="text" value="" optional="true" label="Layers for color" help="Use the 'layers' attribute of 'adata' if present">
531 <expand macro="sanitize_query" /> 574 <expand macro="sanitize_query"/>
532 </param> 575 </param>
533 </when> 576 </when>
534 <when value="false"/> 577 <when value="false"/>
535 </conditional> 578 </conditional>
536 </when> 579 </when>
537 <when value="basis"> 580 <when value="basis">
538 <param argument="basis" type="select" label="Plotting tool that computes coordinates" help=""> 581 <param argument="basis" type="select" label="Plotting tool that computes coordinates">
539 <option value="pca">pca (need to run on 'tl.pca' output)</option> 582 <option value="pca">pca (need to run on 'pl.pca' output)</option>
540 <option value="tsne">tsne (need to run on 'tl.tsne' output)</option> 583 <option value="tsne">tsne (need to run on 'tl.tsne' output)</option>
541 <option value="umap">umap (need to run on 'tl.umap' output)</option> 584 <option value="umap">umap (need to run on 'tl.umap' output)</option>
542 <option value="diffmap">diffmap (need to run on 'tl.diffmap' output)</option> 585 <option value="diffmap">diffmap (need to run on 'tl.diffmap' output)</option>
543 <option value="draw_graph_fr">draw_graph_fr (need to run on 'tl.draw_graph' output)</option> 586 <option value="draw_graph_fr">draw_graph_fr (need to run on 'tl.draw_graph' output)</option>
544 </param> 587 </param>
545 <expand macro="param_color"/> 588 <expand macro="param_color"/>
546 </when> 589 </when>
547 </conditional> 590 </conditional>
548 <expand macro="param_use_raw"/> 591 <expand macro="param_use_raw" falsevalue="None"/>
549 <param argument="sort_order" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Plot data points with higher values on top of others?" help="For continuous annotations used as color parameter"/> 592 <param argument="sort_order" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Plot data points with higher values on top of others?" help="For continuous annotations used as color parameter"/>
550 <expand macro="param_groups"/> 593 <expand macro="param_groups"/>
551 <section name="plot" title="Plot attributes"> 594 <section name="plot" title="Plot attributes">
552 <expand macro="pl_components"/> 595 <expand macro="param_pl_components"/>
553 <expand macro="param_projection"/> 596 <expand macro="param_projection"/>
554 <expand macro="param_legend_loc"/> 597 <expand macro="param_legend_loc"/>
555 <expand macro="param_legend_fontsize"/> 598 <expand macro="param_legend_fontsize"/>
556 <expand macro="param_legend_fontweight"/> 599 <expand macro="param_legend_fontweight"/>
557 <expand macro="param_color_map"/> 600 <expand macro="param_color_map"/>
561 <expand macro="param_title"/> 604 <expand macro="param_title"/>
562 </section> 605 </section>
563 </when> 606 </when>
564 <when value="pl.heatmap"> 607 <when value="pl.heatmap">
565 <expand macro="params_inputs"/> 608 <expand macro="params_inputs"/>
566 <expand macro="gene_symbols"/> 609 <expand macro="param_gene_symbols"/>
567 <expand macro="params_plots"/> 610 <expand macro="params_plots"/>
568 <expand macro="pl_heatmap"/> 611 <expand macro="params_pl_heatmap"/>
569 </when> 612 </when>
570 <when value="pl.dotplot"> 613 <when value="pl.dotplot">
571 <expand macro="params_inputs"/> 614 <expand macro="params_inputs"/>
572 <expand macro="gene_symbols"/> 615 <expand macro="param_gene_symbols"/>
573 <expand macro="params_plots"/> 616 <expand macro="params_plots"/>
574 <expand macro="pl_dotplot"/> 617 <expand macro="params_pl_dotplot"/>
618 </when>
619 <when value="pl.tracksplot">
620 <expand macro="params_inputs"/>
621 <expand macro="param_gene_symbols"/>
622 <expand macro="params_plots"/>
575 </when> 623 </when>
576 <when value="pl.violin"> 624 <when value="pl.violin">
577 <conditional name="key_variables"> 625 <conditional name="key_variables">
578 <param name="type" type="select" label="Keys for accessing variables"> 626 <param name="type" type="select" label="Keys for accessing variables">
579 <option value="var_names">All variables in '.var_names'</option> 627 <option value="var_names" selected="true">All variables in '.var_names'</option>
580 <option value="obs">All fields in '.obs'</option> 628 <option value="obs">All fields in '.obs'</option>
581 <option value="custom">Subset of variables in 'adata.var_names' or fields of '.obs'</option> 629 <option value="custom">Subset of variables in 'adata.var_names' or fields of '.obs'</option>
582 </param> 630 </param>
583 <when value="var_names"/> 631 <when value="var_names"/>
584 <when value="obs"/> 632 <when value="obs"/>
585 <when value="custom"> 633 <when value="custom">
586 <param argument="keys" type="text" value="" label="Keys for accessing variables" help="One or a list of comma-separated index or key from '.var_names' or fields of '.obs'"> 634 <param argument="keys" type="text" value="" label="Keys for accessing variables" help="One or a list of comma-separated index or key from '.var_names' or fields of '.obs'">
587 <expand macro="sanitize_query" /> 635 <expand macro="sanitize_query"/>
588 </param> 636 </param>
589 </when> 637 </when>
590 </conditional> 638 </conditional>
591 <expand macro="param_groupby"/> 639 <expand macro="param_groupby"/>
592 <expand macro="param_log"/> 640 <expand macro="param_log"/>
593 <expand macro="param_use_raw"/> 641 <expand macro="param_use_raw" falsevalue="None"/>
594 <section name="violin_plot" title="Violin plot attributes"> 642 <section name="violin_plot" title="Violin plot attributes">
595 <expand macro="conditional_stripplot"/> 643 <expand macro="conditional_stripplot"/>
596 <conditional name="multi_panel"> 644 <conditional name="multi_panel">
597 <param argument="multi_panel" type="select" label="Display keys in multiple panels" help="Also when 'groupby is not provided"> 645 <param argument="multi_panel" type="select" label="Display keys in multiple panels" help="Also when 'groupby is not provided">
646 <option value="None" selected="true">No</option>
598 <option value="True">Yes</option> 647 <option value="True">Yes</option>
599 <option value="False" selected="true">No</option>
600 </param> 648 </param>
649 <when value="None"/>
601 <when value="True"> 650 <when value="True">
602 <param argument="width" type="integer" min="0" value="" optional="true" label="Width of the figure" help=""/> 651 <!-- <param argument="width" type="integer" min="0" value="" optional="true" label="Width of the figure"/>
603 <param argument="height" type="integer" min="0" value="" optional="true" label="Height of the figure" help=""/> 652 <param argument="height" type="integer" min="0" value="" optional="true" label="Height of the figure"/> -->
604 </when> 653 </when>
605 <when value="False"/>
606 </conditional> 654 </conditional>
607 <expand macro="param_scale"/>
608 </section> 655 </section>
609 <param argument="xlabel" type="text" value="" optional="true" label="Label of the x axis" help="Defaults to 'groupby' if 'rotation' is 'None', otherwise, no label is shown."> 656 <param argument="xlabel" type="text" value="" optional="true" label="Label of the x axis" help="Defaults to 'groupby' if 'rotation' is 'None', otherwise, no label is shown.">
610 <expand macro="sanitize_query" /> 657 <expand macro="sanitize_query"/>
611 </param> 658 </param>
612 <param argument="rotation" type="float" value="" optional="true" label="Rotation of xtick labels" help=""/> 659 <param argument="rotation" type="float" value="" optional="true" label="Rotation of xtick labels"/>
613 <expand macro="seaborn_violinplot"/> 660 <expand macro="params_seaborn_violinplot"/>
661 <expand macro="param_layer"/>
614 </when> 662 </when>
615 <when value="pl.stacked_violin"> 663 <when value="pl.stacked_violin">
616 <expand macro="params_inputs"/> 664 <expand macro="params_inputs"/>
617 <expand macro="gene_symbols"/> 665 <expand macro="param_gene_symbols"/>
618 <expand macro="params_plots"/> 666 <expand macro="params_plots"/>
619 <expand macro="pl_stacked_violin"/> 667 <expand macro="params_pl_stacked_violin"/>
620 </when> 668 </when>
621 <when value="pl.matrixplot"> 669 <when value="pl.matrixplot">
622 <expand macro="params_inputs"/> 670 <expand macro="params_inputs"/>
623 <expand macro="gene_symbols"/> 671 <expand macro="param_gene_symbols"/>
624 <expand macro="params_plots"/> 672 <expand macro="params_plots"/>
625 <expand macro="pl_matrixplot"/> 673 <expand macro="params_pl_matrixplot"/>
626 </when> 674 </when>
627 <when value="pl.clustermap"> 675 <when value="pl.clustermap">
628 <param argument="obs_keys" type="text" value="" optional="true" label="Categorical annotation to plot with a different color map" help="Currently, only a single key is supported."> 676 <param argument="obs_keys" type="text" value="" optional="true" label="Categorical annotation to plot with a different color map" help="Currently, only a single key is supported.">
629 <expand macro="sanitize_query" /> 677 <expand macro="sanitize_query"/>
630 </param> 678 </param>
631 <expand macro="param_use_raw"/> 679 <expand macro="param_use_raw"/>
632 <section name="seaborn_clustermap" title="Parameters for seaborn.clustermap"> 680 <section name="seaborn_clustermap" title="Parameters for seaborn.clustermap">
633 <param name="method" type="select" label="Linkage method to use for calculating clusters" help="More details in https://docs.scipy.org/doc/scipy/reference/generated/scipy.cluster.hierarchy.linkage.html"> 681 <param name="method" type="select" label="Linkage method to use for calculating clusters" help="More details in https://docs.scipy.org/doc/scipy/reference/generated/scipy.cluster.hierarchy.linkage.html">
682 <option value="average" selected="true">average: UPGMA algorithm</option>
634 <option value="single">single: Nearest Point Algorithm</option> 683 <option value="single">single: Nearest Point Algorithm</option>
635 <option value="complete">complete: Farthest Point Algorithm or Voor Hees Algorithm</option> 684 <option value="complete">complete: Farthest Point Algorithm or Voor Hees Algorithm</option>
636 <option value="average">average: UPGMA algorithm</option>
637 <option value="weighted">weighted: WPGMA algorithm</option> 685 <option value="weighted">weighted: WPGMA algorithm</option>
638 <option value="centroid">centroid: UPGMC algorithm</option> 686 <option value="centroid">centroid: UPGMC algorithm</option>
639 <option value="median">median: WPGMC algorithm</option> 687 <option value="median">median: WPGMC algorithm</option>
640 <option value="ward">ward: incremental algorithm</option> 688 <option value="ward">ward: incremental algorithm</option>
641 </param> 689 </param>
642 <param name="metric" type="select" label="Distance metric to use for the data" help="See scipy.spatial.distance.pdist documentation for more options https://docs.scipy.org/doc/scipy/reference/generated/scipy.spatial.distance.pdist.html"> 690 <param name="metric" type="select" label="Distance metric to use for the data" help="See scipy.spatial.distance.pdist documentation for more options https://docs.scipy.org/doc/scipy/reference/generated/scipy.spatial.distance.pdist.html">
643 <expand macro="distance_metric_options"/> 691 <expand macro="distance_metric_options"/>
644 </param> 692 </param>
645 <param name="z_score" type="select" label="Calculate z-scores for the rows or the columns?" help="Z scores are: z = (x - mean)/std, so values in each row (column) will get the mean of the row (column) subtracted, then divided by the standard deviation of the row (column). This ensures that each row (column) has mean of 0 and variance of 1."> 693 <param name="z_score" type="select" label="Calculate z-scores for the rows or the columns?" help="Z scores are: z = (x - mean)/std, so values in each row (column) will get the mean of the row (column) subtracted, then divided by the standard deviation of the row (column). This ensures that each row (column) has mean of 0 and variance of 1.">
646 <option value="None">No Z-score</option> 694 <option value="None" selected="true">No Z-score</option>
647 <option value="0">Rows</option> 695 <option value="0">Rows</option>
648 <option value="1">Columns</option> 696 <option value="1">Columns</option>
649 </param> 697 </param>
650 <param name="standard_scale" type="select" label="Standardize a dimension?" help="It means for each row or column, subtract the minimum and divide each by its maximum."> 698 <param name="standard_scale" type="select" label="Standardize a dimension?" help="It means for each row or column, subtract the minimum and divide each by its maximum.">
651 <option value="None">No standardization</option> 699 <option value="None" selected="true">No standardization</option>
652 <option value="0">Rows</option> 700 <option value="0">Rows</option>
653 <option value="1">Columns</option> 701 <option value="1">Columns</option>
654 </param> 702 </param>
655 <param name="col_cluster" type="boolean" truevalue="True" falsevalue="False" checked="false" label="Cluster the columns?" help=""/> 703 <param name="col_cluster" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Cluster the columns?"/>
656 <param name="row_cluster" type="boolean" truevalue="True" falsevalue="False" checked="false" label="Cluster the rows?" help=""/> 704 <param name="row_cluster" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Cluster the rows?"/>
657 </section> 705 </section>
658 </when> 706 </when>
659 <when value="pl.highly_variable_genes"> 707 <when value="pl.highest_expr_genes">
708 <param argument="n_top" type="integer" min="0" value="30" label="Number of top genes"/>
709 <expand macro="param_gene_symbols"/>
660 <expand macro="param_log"/> 710 <expand macro="param_log"/>
661 <param argument="highly_variable_genes" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Plot highly variable genes or gene subset?"/>
662 </when>
663 <when value="pl.highest_expr_genes">
664 <param argument="n_top" type="integer" min="0" value="30" label="Number of top genes" help=""/>
665 <param argument="gene_symbols" type="text" optional="true" label="Key for field in '.var' that stores gene symbols" help="Fill it if you do not want to use '.var_names'.">
666 <expand macro="sanitize_query" />
667 </param>
668 <section name="setseaborn_boxplot" title="Plot settings" expanded="false"> 711 <section name="setseaborn_boxplot" title="Plot settings" expanded="false">
669 <param argument="color" type="text" value="" optional="true" label="Color for all of the elements, or seed for a gradient palette" help=""> 712 <param argument="color" type="text" value="" optional="true" label="Color for all of the elements, or seed for a gradient palette">
670 <expand macro="sanitize_query" /> 713 <expand macro="sanitize_query"/>
671 </param> 714 </param>
672 <param argument="palette" type="select" optional="true" label="Colors to use for the different levels of the hue variable" help="See https://seaborn.pydata.org/tutorial/color_palettes.html for more details."> 715 <param argument="palette" type="select" optional="true" label="Colors to use for the different levels of the hue variable" help="See https://seaborn.pydata.org/tutorial/color_palettes.html for more details.">
673 <expand macro="seaborn_color_palette_options"/> 716 <expand macro="seaborn_color_palette_options"/>
674 </param> 717 </param>
675 <param argument="saturation" type="float" value="1" label="Proportion of the original saturation to draw colors at" help="Large patches often look better with slightly desaturated colors, but set this to 1 if you want the plot colors to perfectly match the input color spec."/> 718 <param argument="saturation" type="float" value="0.75" label="Proportion of the original saturation to draw colors at" help="Large patches often look better with slightly desaturated colors, but set this to 1 if you want the plot colors to perfectly match the input color spec."/>
676 </section> 719 </section>
720 </when>
721 <when value="pl.highly_variable_genes">
722 <expand macro="param_log"/>
723 <param argument="highly_variable_genes" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Plot highly variable genes or gene subset?"/>
724 </when>
725 <when value="pl.scrublet_score_distribution">
726 <param name="scale_hist_obs" type="select" label="Set y axis scale transformation in matplotlib for the plot of observed transcriptomes">
727 <option value="log" selected="true">log</option>
728 <option value="linear">linear</option>
729 <option value="symlog">symlog</option>
730 <option value="logit">logit</option>
731 </param>
732 <param name="scale_hist_sim" type="select" label="Set y axis scale transformation in matplotlib for the plot of simulated doublets">
733 <option value="linear" selected="true">linear</option>
734 <option value="log">log</option>
735 <option value="symlog">symlog</option>
736 <option value="logit">logit</option>
737 </param>
738 <expand macro="pl_figsize"/>
677 </when> 739 </when>
678 <when value="pl.pca"> 740 <when value="pl.pca">
679 <expand macro="param_color"/> 741 <expand macro="param_color"/>
680 <expand macro="param_use_raw"/> 742 <expand macro="param_use_raw"/>
681 <expand macro="param_sort_order"/> 743 <expand macro="param_sort_order"/>
682 <expand macro="param_groups"/> 744 <expand macro="param_groups"/>
683 <expand macro="pl_attribute_section"/> 745 <expand macro="params_pl_attribute_section"/>
746 <expand macro="params_scatter_outine"/>
684 <expand macro="section_matplotlib_pyplot_scatter"/> 747 <expand macro="section_matplotlib_pyplot_scatter"/>
748 <expand macro="param_layer"/>
685 </when> 749 </when>
686 <when value="pl.pca_loadings"> 750 <when value="pl.pca_loadings">
687 <param argument="components" type="text" value="1,2,3" label="List of comma-separated components" help="1, 2, 3 means first, second and third principal components"> 751 <param argument="components" type="text" value="1,2,3" label="List of comma-separated components" help="1, 2, 3 means first, second and third principal components">
688 <expand macro="sanitize_query" /> 752 <expand macro="sanitize_query"/>
689 </param> 753 </param>
754 <param argument="include_lowest" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Show the variables with both highest and lowest loadings"/>
755 <param argument="n_points" type="integer" value="" optional="true" label="Number of variables to plot for each component"/>
690 </when> 756 </when>
691 <when value="pl.pca_variance_ratio"> 757 <when value="pl.pca_variance_ratio">
692 <param argument="n_pcs" type="integer" min="0" value="30" label="Number of PCs to show" help=""/> 758 <param argument="n_pcs" type="integer" min="0" value="30" label="Number of PCs to show"/>
693 <expand macro="param_log"/> 759 <expand macro="param_log"/>
694 </when> 760 </when>
695 <when value="pl.pca_overview"> 761 <when value="pl.pca_overview">
696 <expand macro="param_color"/> 762 <expand macro="param_color"/>
697 <expand macro="param_use_raw"/> 763 <expand macro="param_use_raw"/>
698 <expand macro="param_sort_order"/> 764 <expand macro="param_sort_order"/>
699 <expand macro="param_groups"/> 765 <expand macro="param_groups"/>
700 <expand macro="pl_attribute_section"/> 766 <expand macro="params_pl_attribute_section"/>
767 <expand macro="params_scatter_outine"/>
701 <expand macro="section_matplotlib_pyplot_scatter"/> 768 <expand macro="section_matplotlib_pyplot_scatter"/>
702 </when> 769 </when>
703 <when value="pl.tsne"> 770 <when value="pl.tsne">
704 <expand macro="param_color"/> 771 <expand macro="param_color"/>
772 <expand macro="param_gene_symbols"/>
705 <expand macro="param_use_raw"/> 773 <expand macro="param_use_raw"/>
706 <expand macro="pl_edges"/> 774 <expand macro="pl_edges"/>
707 <expand macro="param_arrows"/> 775 <expand macro="param_arrows"/>
708 <expand macro="param_sort_order"/> 776 <expand macro="param_sort_order"/>
709 <expand macro="param_groups"/> 777 <expand macro="param_groups"/>
710 <expand macro="pl_attribute_section"/> 778 <expand macro="params_pl_attribute_section"/>
779 <expand macro="params_scatter_outine"/>
711 <expand macro="section_matplotlib_pyplot_scatter"/> 780 <expand macro="section_matplotlib_pyplot_scatter"/>
781 <expand macro="param_layer"/>
712 </when> 782 </when>
713 <when value="pl.umap"> 783 <when value="pl.umap">
714 <expand macro="param_color"/> 784 <expand macro="param_color"/>
715 <expand macro="param_use_raw"/> 785 <expand macro="param_use_raw"/>
716 <expand macro="pl_edges"/> 786 <expand macro="pl_edges"/>
717 <expand macro="param_arrows"/> 787 <expand macro="param_arrows"/>
718 <expand macro="param_sort_order"/> 788 <expand macro="param_sort_order"/>
719 <expand macro="param_groups"/> 789 <expand macro="param_groups"/>
720 <expand macro="pl_attribute_section"/> 790 <expand macro="params_pl_attribute_section"/>
791 <expand macro="params_scatter_outine"/>
721 <expand macro="section_matplotlib_pyplot_scatter"/> 792 <expand macro="section_matplotlib_pyplot_scatter"/>
793 <expand macro="param_layer"/>
722 </when> 794 </when>
723 <when value="pl.diffmap"> 795 <when value="pl.diffmap">
724 <expand macro="param_color"/> 796 <expand macro="param_color"/>
725 <expand macro="param_use_raw"/> 797 <expand macro="param_use_raw"/>
726 <expand macro="param_sort_order"/> 798 <expand macro="param_sort_order"/>
727 <expand macro="param_groups"/> 799 <expand macro="param_groups"/>
728 <expand macro="pl_attribute_section"/> 800 <expand macro="params_pl_attribute_section"/>
801 <expand macro="params_scatter_outine"/>
729 <expand macro="section_matplotlib_pyplot_scatter"/> 802 <expand macro="section_matplotlib_pyplot_scatter"/>
803 <expand macro="param_layer"/>
730 </when> 804 </when>
731 <when value="pl.draw_graph"> 805 <when value="pl.draw_graph">
732 <expand macro="param_color"/> 806 <expand macro="param_color"/>
733 <expand macro="gene_symbols"/> 807 <expand macro="param_gene_symbols"/>
734 <expand macro="param_use_raw"/> 808 <expand macro="param_use_raw"/>
735 <param argument="layout" type="select" optional="false" label="Plotting layout" help=""> 809 <param argument="layout" type="select" optional="false" label="Plotting layout">
736 <expand macro="options_layout"/> 810 <expand macro="options_layout"/>
737 </param> 811 </param>
738 <expand macro="pl_edges"/> 812 <expand macro="pl_edges"/>
739 <expand macro="param_arrows"/> 813 <expand macro="param_arrows"/>
740 <expand macro="param_sort_order"/> 814 <expand macro="param_sort_order"/>
741 <expand macro="param_groups"/> 815 <expand macro="param_groups"/>
742 <expand macro="pl_attribute_section"/> 816 <expand macro="params_pl_attribute_section"/>
817 <expand macro="params_scatter_outine"/>
743 <expand macro="section_matplotlib_pyplot_scatter"/> 818 <expand macro="section_matplotlib_pyplot_scatter"/>
819 <expand macro="param_layer"/>
744 </when> 820 </when>
745 <when value="pl.embedding_density"> 821 <when value="pl.embedding_density">
746 <param argument="basis" type="text" value="umap" label="The embedding over which the density was calculated." help="This embedded representation should be found in adata.obsm['X_[basis]']"> 822 <param argument="basis" type="text" value="umap" label="The embedding over which the density was calculated." help="This embedded representation should be found in adata.obsm['X_[basis]']">
747 <expand macro="sanitize_query" /> 823 <expand macro="sanitize_query"/>
748 </param> 824 </param>
749 <param argument="key" type="text" optional="true" value="" label="Name of the .obs covariate that contains the density estimates" help="Alternatively, pass _groupby_."> 825 <param argument="key" type="text" optional="true" value="" label="Name of the .obs covariate that contains the density estimates" help="Alternatively, pass _groupby_.">
750 <expand macro="sanitize_query" /> 826 <expand macro="sanitize_query"/>
751 </param> 827 </param>
752 <param argument="groupby" type="text" optional="true" value="" label="Name of the condition used in tl.embedding_density" help="Alternatively, pass _key_."> 828 <param argument="groupby" type="text" optional="true" value="" label="Name of the condition used in tl.embedding_density" help="Alternatively, pass _key_.">
753 <expand macro="sanitize_query" /> 829 <expand macro="sanitize_query"/>
754 </param> 830 </param>
755 <param argument="group" type="text" optional="all" value="" label="The category in the categorical observation annotation to be plotted" 831 <param argument="group" type="text" optional="all" value="" label="The category in the categorical observation annotation to be plotted"
756 help="For example, 'G1' in the cell cycle 'phase' covariate. If multiple categories want to be plotted use a comma separated list"> 832 help="For example, 'G1' in the cell cycle 'phase' covariate. If multiple categories want to be plotted use a comma separated list">
757 <expand macro="sanitize_query" /> 833 <expand macro="sanitize_query"/>
758 </param> 834 </param>
759 <expand macro="param_color_map"/> 835 <expand macro="param_color_map"/>
760 <param argument="bg_dotsize" type="integer" min="0" value="80" label="Dot size for background data points not in the group"/> 836 <param argument="bg_dotsize" type="integer" min="0" value="80" label="Dot size for background data points not in the group"/>
761 <param argument="fg_dotsize" type="integer" min="0" value="180" label="Dot size for foreground data points in the group"/> 837 <param argument="fg_dotsize" type="integer" min="0" value="180" label="Dot size for foreground data points in the group"/>
762 <expand macro="param_ncols"/> 838 <expand macro="param_ncols"/>
763 <expand macro="param_wspace"/> 839 <expand macro="param_wspace"/>
764 <expand macro="param_hspace"/> 840 <expand macro="param_hspace"/>
765 </when> 841 </when>
766 <when value="pl.dpt_groups_pseudotime"> 842 <!-- This function is commented out because it is not compatible with pandas version. If the issue is not resolved in the next update, this should be removed. -->
843 <!-- <when value="pl.dpt_groups_pseudotime">
767 <expand macro="param_color_map"/> 844 <expand macro="param_color_map"/>
768 </when> 845 </when> -->
769 <when value="pl.dpt_timeseries"> 846 <when value="pl.dpt_timeseries">
770 <conditional name="heatmap"> 847 <conditional name="heatmap">
771 <param argument="as_heatmap" type="select" label="Plot the timeseries as heatmap?" help=""> 848 <param argument="as_heatmap" type="select" label="Plot the timeseries as heatmap?">
772 <option value="True">Yes</option> 849 <option value="True" selected="true">Yes</option>
773 <option value="False">No</option> 850 <option value="False">No</option>
774 </param> 851 </param>
775 <when value="True"> 852 <when value="True">
776 <expand macro="param_color_map"/> 853 <expand macro="param_color_map"/>
777 </when> 854 </when>
778 <when value="False" /> 855 <when value="False"/>
779 </conditional> 856 </conditional>
780 </when> 857 </when>
781 <when value="pl.paga"> 858 <when value="pl.paga">
782 <expand macro="inputs_paga"/> 859 <expand macro="params_pl_paga"/>
783 </when> 860 </when>
784 <when value="pl.paga_compare"> 861 <when value="pl.paga_compare">
785 <expand macro="inputs_paga"/> 862 <expand macro="params_pl_paga"/>
863 <section name="plot" title="Plot attributes">
864 <expand macro="param_pl_components"/>
865 <expand macro="param_projection"/>
866 <expand macro="param_legend_loc">
867 <option value="on data">on data</option>
868 <option value="right margin">right margin</option>
869 </expand>
870 <expand macro="param_legend_fontsize"/>
871 <expand macro="param_legend_fontweight"/>
872 <expand macro="param_color_map"/>
873 <expand macro="param_palette"/>
874 <expand macro="param_frameon"/>
875 <expand macro="param_size"/>
876 <expand macro="param_title"/>
877 </section>
786 </when> 878 </when>
787 <when value="pl.paga_path"> 879 <when value="pl.paga_path">
788 <param argument="nodes" type="text" value="" label="A path through nodes of the abstracted graph" 880 <param argument="nodes" type="text" value="" label="A path through nodes of the abstracted graph" help="Each node is represented by its indice (within .categories) for the groups that have been used to run PAGA. Comma-separated">
789 help="Each node is represented by its indice (within .categories) for the groups that have been used to run PAGA. Comma-separated"> 881 <expand macro="sanitize_query"/>
790 <expand macro="sanitize_query" />
791 </param> 882 </param>
792 <param argument="keys" type="text" value="" label="Keys for accessing variables" help="One or a list of comma-separated index or key from '.var_names' or fields of '.obs'"> 883 <param argument="keys" type="text" value="" label="Keys for accessing variables" help="One or a list of comma-separated index or key from '.var_names' or fields of '.obs'">
793 <expand macro="sanitize_query" /> 884 <expand macro="sanitize_query"/>
794 </param> 885 </param>
795 <expand macro="param_use_raw"/> 886 <expand macro="param_use_raw"/>
796 <param argument="annotations" type="text" value="" optional="true" label="Key to plot" help="Keys for obs, comma-separated"> 887 <param argument="annotations" type="text" value="dpt_pseudotime" optional="true" label="Key to plot" help="Keys for obs, comma-separated">
797 <expand macro="sanitize_query" /> 888 <expand macro="sanitize_query"/>
798 </param> 889 </param>
799 <expand macro="param_color_map"/> 890 <expand macro="param_color_map"/>
800 <param argument="n_avg" type="integer" value="1" label="Number of data points to include in computation of running average"/> 891 <param argument="n_avg" type="integer" value="1" label="Number of data points to include in computation of running average"/>
801 <param argument="groups_key" type="text" value="" optional="true" label="Key of the grouping used to run PAGA" help="If not set, use uns/page/groups"> 892 <param argument="groups_key" type="text" value="" optional="true" label="Key of the grouping used to run PAGA" help="If not set, use uns/page/groups">
802 <expand macro="sanitize_query" /> 893 <expand macro="sanitize_query"/>
803 </param> 894 </param>
804 <param argument="as_heatmap" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Plot the timeseries as heatmap?" help="If not, annotations have no effect."/> 895 <param argument="as_heatmap" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Plot the timeseries as heatmap?" help="If not, annotations have no effect."/>
805 <param argument="show_node_names" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Plot the node names on the nodes bar?"/> 896 <param argument="show_node_names" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Plot the node names on the nodes bar?"/>
806 <param argument="show_colorbar" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Show the colorbar?"/> 897 <param argument="show_colorbar" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Show the colorbar?"/>
807 <param argument="show_yticks" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Show the y ticks?"/> 898 <param argument="show_yticks" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Show the y ticks?"/>
808 <param argument="normalize_to_zero_one" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Shift and scale the running average to [0, 1] per gene?"/> 899 <param argument="normalize_to_zero_one" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Shift and scale the running average to [0, 1] per gene?"/>
809 </when> 900 </when>
810 <when value="pl.rank_genes_groups"> 901 <when value="pl.rank_genes_groups">
811 <expand macro="param_groups"/> 902 <expand macro="param_groups"/>
812 <expand macro="param_n_genes"/> 903 <expand macro="param_n_genes" value="20"/>
813 <expand macro="gene_symbols"/> 904 <expand macro="param_gene_symbols"/>
814 <param argument="fontsize" type="integer" min="0" value="8" label="Font size for gene names"/> 905 <param argument="fontsize" type="integer" min="0" value="8" label="Font size for gene names"/>
815 <expand macro="param_ncols"/> 906 <expand macro="param_ncols"/>
816 <param argument="sharey" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Should the y-axis of each panels be shared?" help="If not, each panel has its own y-axis range"/> 907 <param argument="sharey" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Should the y-axis of each panels be shared?" help="If not, each panel has its own y-axis range"/>
817 </when> 908 </when>
818 <when value="pl.rank_genes_groups_violin"> 909 <when value="pl.rank_genes_groups_violin">
819 <expand macro="param_groups"/> 910 <expand macro="param_groups"/>
820 <conditional name="genes"> 911 <conditional name="genes">
821 <param argument="select" type="select" label="Which genes to plot?" help=""> 912 <param argument="select" type="select" label="Which genes to plot?">
822 <option value="n_genes">A number of genes</option> 913 <option value="n_genes" selected="true">A number of genes</option>
823 <option value="gene_names">A custom list of genes</option> 914 <option value="gene_names">A custom list of genes</option>
824 </param> 915 </param>
825 <when value="n_genes"> 916 <when value="n_genes">
826 <expand macro="param_n_genes"/> 917 <expand macro="param_n_genes" value="20"/>
827 </when> 918 </when>
828 <when value="gene_names"> 919 <when value="gene_names">
829 <param argument="gene_names" type="text" value="" label="List of genes to plot" help="A list of comma-separated names"> 920 <param argument="gene_names" type="text" value="" label="List of genes to plot" help="A list of comma-separated names">
830 <expand macro="sanitize_query" /> 921 <expand macro="sanitize_query"/>
831 </param> 922 </param>
832 </when> 923 </when>
833 </conditional> 924 </conditional>
834 <expand macro="gene_symbols"/> 925 <expand macro="param_gene_symbols"/>
835 <expand macro="param_use_raw"/> 926 <expand macro="param_use_raw" falsevalue="None"/>
836 <param argument="split" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Split the violins?"/> 927 <param argument="split" type="boolean" truevalue="True" falsevalue="False" checked="true" label="Split the violins?"/>
837 <section name="violin_plot" title="Violin plot attributes"> 928 <section name="violin_plot" title="Violin plot attributes">
838 <expand macro="conditional_stripplot"/> 929 <expand macro="conditional_stripplot"/>
839 <expand macro="param_scale"/> 930 <param argument="density_norm" type="select" label="Method used to scale the width of each violin">
840 </section> 931 <option value="width" selected="true">width: each violin will have the same width</option>
841 </when> 932 <option value="area">area: each violin will have the same area</option>
842 <when value="pl.rank_genes_groups_dotplot"> 933 <option value="count">count: the width of the violins will be scaled by the number of observations in that bin</option>
843 <expand macro="params_inputs"/> 934 </param>
935 </section>
936 </when>
937 <when value="pl.rank_genes_groups_stacked_violin">
844 <expand macro="pl_rank_genes_groups_ext"/> 938 <expand macro="pl_rank_genes_groups_ext"/>
845 <expand macro="params_plots"/> 939 <expand macro="params_plots"/>
846 <expand macro="gene_symbols"/> 940 <expand macro="param_gene_symbols"/>
847 <expand macro="pl_dotplot"/> 941 <expand macro="params_pl_stacked_violin"/>
848 </when> 942 </when>
849 <when value="pl.rank_genes_groups_heatmap"> 943 <when value="pl.rank_genes_groups_heatmap">
850 <expand macro="pl_rank_genes_groups_ext"/> 944 <expand macro="pl_rank_genes_groups_ext"/>
851 <expand macro="params_plots"/> 945 <expand macro="params_plots"/>
852 <expand macro="gene_symbols"/> 946 <expand macro="param_gene_symbols"/>
853 <expand macro="pl_heatmap"/> 947 <expand macro="params_pl_heatmap"/>
948 </when>
949 <when value="pl.rank_genes_groups_dotplot">
950 <expand macro="pl_rank_genes_groups_ext"/>
951 <expand macro="params_plots"/>
952 <expand macro="param_gene_symbols"/>
953 <expand macro="params_pl_dotplot"/>
954 <expand macro="values_to_plot"/>
854 </when> 955 </when>
855 <when value="pl.rank_genes_groups_matrixplot"> 956 <when value="pl.rank_genes_groups_matrixplot">
856 <expand macro="pl_rank_genes_groups_ext"/> 957 <expand macro="pl_rank_genes_groups_ext"/>
857 <expand macro="params_plots"/> 958 <expand macro="params_plots"/>
858 <expand macro="gene_symbols"/> 959 <expand macro="param_gene_symbols"/>
859 <expand macro="pl_matrixplot"/> 960 <expand macro="params_pl_matrixplot"/>
860 </when> 961 <expand macro="values_to_plot"/>
861 <when value="pl.rank_genes_groups_stacked_violin"> 962 </when>
963 <when value="pl.rank_genes_groups_tracksplot">
862 <expand macro="pl_rank_genes_groups_ext"/> 964 <expand macro="pl_rank_genes_groups_ext"/>
863 <expand macro="params_plots"/> 965 <expand macro="params_plots"/>
864 <expand macro="gene_symbols"/> 966 <expand macro="param_gene_symbols"/>
865 <expand macro="pl_stacked_violin"/> 967 <expand macro="params_pl_heatmap"/>
866 </when> 968 </when>
867 </conditional> 969 </conditional>
868 <expand macro="inputs_common_advanced"/> 970 <expand macro="inputs_common_advanced"/>
869 </inputs> 971 </inputs>
870 <outputs> 972 <outputs>
892 <data name="hidden_output" format="txt" label="Log file" hidden="true" > 994 <data name="hidden_output" format="txt" label="Log file" hidden="true" >
893 <filter>advanced_common['show_log']</filter> 995 <filter>advanced_common['show_log']</filter>
894 </data> 996 </data>
895 </outputs> 997 </outputs>
896 <tests> 998 <tests>
897 <test expect_num_outputs="2"> 999 <!-- test 1 -->
898 <!-- test 1: pl.scatter --> 1000 <test expect_num_outputs="2">
899 <param name="adata" value="pbmc68k_reduced.h5ad" /> 1001 <param name="adata" value="pbmc68k_reduced.h5ad"/>
900 <param name="format" value="png"/> 1002 <param name="format" value="png"/>
901 <conditional name="method"> 1003 <conditional name="method">
902 <param name="method" value="pl.scatter"/> 1004 <param name="method" value="pl.scatter"/>
903 <conditional name="type"> 1005 <conditional name="type">
904 <param name="type" value="basis"/> 1006 <param name="type" value="basis"/>
905 <param name="basis" value="umap"/> 1007 <param name="basis" value="umap"/>
906 <param name="color" value="HES4"/> 1008 <param name="color" value="HES4"/>
907 </conditional> 1009 </conditional>
908 <param name="use_raw" value="True"/> 1010 <param name="use_raw" value="True"/>
909 <param name="sort_order" value="True"/>
910 <section name="plot"> 1011 <section name="plot">
911 <param name="projection" value="2d"/>
912 <param name="legend_loc" value="right margin"/>
913 <param name="legend_fontsize" value="1"/> 1012 <param name="legend_fontsize" value="1"/>
914 <param name="legend_fontweight" value="normal"/> 1013 <param name="legend_fontweight" value="normal"/>
915 <param name="color_map" value="inferno"/> 1014 <param name="color_map" value="inferno"/>
916 <param name="palette" value="inferno"/> 1015 <param name="palette" value="inferno"/>
917 <param name="frameon" value="True"/>
918 <param name="size" value="1"/> 1016 <param name="size" value="1"/>
919 </section> 1017 </section>
920 </conditional> 1018 </conditional>
921 <section name="advanced_common"> 1019 <section name="advanced_common">
922 <param name="show_log" value="true" /> 1020 <param name="show_log" value="true"/>
923 </section> 1021 </section>
924 <output name="hidden_output"> 1022 <output name="hidden_output">
925 <assert_contents> 1023 <assert_contents>
926 <has_text_matching expression="sc.pl.scatter"/> 1024 <has_text_matching expression="sc.pl.scatter"/>
927 <has_text_matching expression="basis='umap'" /> 1025 <has_text_matching expression="basis='umap'"/>
928 <has_text_matching expression="color=\['HES4'\]"/> 1026 <has_text_matching expression="color=\['HES4'\]"/>
929 <has_text_matching expression="use_raw=True"/> 1027 <has_text_matching expression="use_raw=True"/>
930 <has_text_matching expression="sort_order=True"/> 1028 <has_text_matching expression="sort_order=True"/>
931 <has_text_matching expression="projection='2d'"/> 1029 <has_text_matching expression="projection='2d'"/>
932 <has_text_matching expression="legend_loc='right margin'"/>
933 <has_text_matching expression="legend_fontsize=1"/> 1030 <has_text_matching expression="legend_fontsize=1"/>
934 <has_text_matching expression="legend_fontweight='normal'"/> 1031 <has_text_matching expression="legend_fontweight='normal'"/>
935 <has_text_matching expression="color_map='inferno'"/> 1032 <has_text_matching expression="color_map='inferno'"/>
936 <has_text_matching expression="frameon=True"/> 1033 <has_text_matching expression="frameon=True"/>
937 <has_text_matching expression="size=1.0"/> 1034 <has_text_matching expression="size=1.0"/>
938 </assert_contents> 1035 </assert_contents>
939 </output> 1036 </output>
940 <output name="out_png" file="pl.scatter.umap.pbmc68k_reduced.png" ftype="png" compare="sim_size"/> 1037 <output name="out_png" file="pl.scatter.umap.pbmc68k_reduced.png" ftype="png" compare="image_diff"/>
941 </test> 1038 </test>
942 <test expect_num_outputs="2"> 1039
943 <!-- test 2: pl.scatter --> 1040 <!-- test 2 -->
944 <param name="adata" value="krumsiek11.h5ad" /> 1041 <test expect_num_outputs="2">
1042 <param name="adata" value="krumsiek11.h5ad"/>
945 <param name="format" value="png"/> 1043 <param name="format" value="png"/>
946 <conditional name="method"> 1044 <conditional name="method">
947 <param name="method" value="pl.scatter"/> 1045 <param name="method" value="pl.scatter"/>
948 <conditional name="type"> 1046 <conditional name="type">
949 <param name="type" value="xy"/> 1047 <param name="type" value="xy"/>
950 <param name="x" value="EKLF"/> 1048 <param name="x" value="EKLF"/>
951 <param name="y" value="Cebpa"/> 1049 <param name="y" value="Cebpa"/>
952 <conditional name="layers">
953 <param name="use_layers" value="false"/>
954 </conditional>
955 </conditional> 1050 </conditional>
956 <param name="use_raw" value="False"/>
957 <param name="sort_order" value="True"/>
958 <section name="plot"> 1051 <section name="plot">
959 <param name="projection" value="2d"/>
960 <param name="legend_loc" value="right margin"/>
961 <param name="legend_fontsize" value="1"/> 1052 <param name="legend_fontsize" value="1"/>
962 <param name="legend_fontweight" value="normal"/> 1053 <param name="legend_fontweight" value="normal"/>
963 <param name="palette" value="bwr"/> 1054 <param name="palette" value="bwr"/>
964 <param name="frameon" value="False"/>
965 <param name="size" value="1"/> 1055 <param name="size" value="1"/>
966 <param name="title" value="A title"/> 1056 <param name="title" value="A title"/>
967 </section> 1057 </section>
968 </conditional> 1058 </conditional>
969 <section name="advanced_common"> 1059 <section name="advanced_common">
970 <param name="show_log" value="true" /> 1060 <param name="show_log" value="true"/>
971 </section> 1061 </section>
972 <output name="hidden_output"> 1062 <output name="hidden_output">
973 <assert_contents> 1063 <assert_contents>
974 <has_text_matching expression="sc.pl.scatter"/> 1064 <has_text_matching expression="sc.pl.scatter"/>
975 <has_text_matching expression="x_field='EKLF'" /> 1065 <has_text_matching expression="x_field='EKLF'"/>
976 <has_text_matching expression="y_field='Cebpa'"/> 1066 <has_text_matching expression="y_field='Cebpa'"/>
977 <has_text_matching expression="use_raw=False"/> 1067 <has_text_matching expression="use_raw=None"/>
978 <has_text_matching expression="sort_order=True"/> 1068 <has_text_matching expression="sort_order=True"/>
979 <has_text_matching expression="projection='2d'"/> 1069 <has_text_matching expression="projection='2d'"/>
980 <has_text_matching expression="legend_loc='right margin'"/>
981 <has_text_matching expression="legend_fontsize=1"/> 1070 <has_text_matching expression="legend_fontsize=1"/>
982 <has_text_matching expression="legend_fontweight='normal'"/> 1071 <has_text_matching expression="legend_fontweight='normal'"/>
983 <has_text_matching expression="frameon=False"/> 1072 <has_text_matching expression="frameon=True"/>
984 <has_text_matching expression="size=1.0"/> 1073 <has_text_matching expression="size=1.0"/>
985 <has_text_matching expression="title='A title'"/> 1074 <has_text_matching expression="title='A title'"/>
986 </assert_contents> 1075 </assert_contents>
987 </output> 1076 </output>
988 <output name="out_png" file="pl.scatter.krumsiek11.png" ftype="png" compare="sim_size"/> 1077 <output name="out_png" file="pl.scatter.krumsiek11.png" ftype="png" compare="image_diff"/>
989 </test> 1078 </test>
990 <test expect_num_outputs="2"> 1079
991 <!-- test 3: pl.heatmap --> 1080 <!-- test 3 -->
992 <param name="adata" value="krumsiek11.h5ad" /> 1081 <test expect_num_outputs="2">
1082 <param name="adata" value="pbmc68k_reduced.h5ad"/>
1083 <param name="format" value="png"/>
1084 <conditional name="method">
1085 <param name="method" value="pl.scatter"/>
1086 <conditional name="type">
1087 <param name="type" value="xy"/>
1088 <param name="x" value="n_genes"/>
1089 <param name="y" value="n_counts"/>
1090 </conditional>
1091 <section name="plot">
1092 <param name="legend_fontsize" value="1"/>
1093 <param name="legend_fontweight" value="normal"/>
1094 <param name="palette" value="bwr"/>
1095 <param name="size" value="1"/>
1096 <param name="title" value="A title"/>
1097 </section>
1098 </conditional>
1099 <section name="advanced_common">
1100 <param name="show_log" value="true"/>
1101 </section>
1102 <output name="hidden_output">
1103 <assert_contents>
1104 <has_text_matching expression="sc.pl.scatter"/>
1105 <has_text_matching expression="use_raw=None"/>
1106 <has_text_matching expression="sort_order=True"/>
1107 <has_text_matching expression="projection='2d'"/>
1108 <has_text_matching expression="legend_fontsize=1"/>
1109 <has_text_matching expression="legend_fontweight='normal'"/>
1110 <has_text_matching expression="frameon=True"/>
1111 <has_text_matching expression="size=1.0"/>
1112 <has_text_matching expression="title='A title'"/>
1113 </assert_contents>
1114 </output>
1115 <output name="out_png" file="pl.scatter.pbmc68k_reduced.png" ftype="png" compare="image_diff"/>
1116 </test>
1117
1118 <!-- test 4 -->
1119 <test expect_num_outputs="2">
1120 <param name="adata" value="krumsiek11.h5ad"/>
993 <param name="format" value="png"/> 1121 <param name="format" value="png"/>
994 <conditional name="method"> 1122 <conditional name="method">
995 <param name="method" value="pl.heatmap"/> 1123 <param name="method" value="pl.heatmap"/>
996 <conditional name="var_names">
997 <param name="type" value="all"/>
998 </conditional>
999 <param name="groupby" value="cell_type"/> 1124 <param name="groupby" value="cell_type"/>
1000 <param name="num_categories" value="7"/>
1001 <param name="log" value="False"/>
1002 <param name="use_raw" value="False"/>
1003 <conditional name="figsize"> 1125 <conditional name="figsize">
1004 <param name="test" value="yes"/> 1126 <param name="custom" value="yes"/>
1005 <param name="width" value="10" /> 1127 <param name="width" value="10"/>
1006 <param name="height" value="3"/> 1128 <param name="height" value="3"/>
1007 </conditional> 1129 </conditional>
1008 <param name="dendrogram" value="True"/> 1130 <param name="dendrogram" value="True"/>
1009 <param name="swap_axes" value="True"/> 1131 <param name="swap_axes" value="True"/>
1010 <param name="show_gene_labels" value="False"/>
1011 <section name="matplotlib_pyplot_imshow"> 1132 <section name="matplotlib_pyplot_imshow">
1012 <param name="cmap" value="YlGnBu"/> 1133 <param name="cmap" value="YlGnBu"/>
1013 <param name="interpolation" value="None"/> 1134 </section>
1014 <param name="origin" value="upper"/> 1135 </conditional>
1015 </section> 1136 <section name="advanced_common">
1016 </conditional> 1137 <param name="show_log" value="true"/>
1017 <section name="advanced_common">
1018 <param name="show_log" value="true" />
1019 </section> 1138 </section>
1020 <output name="hidden_output"> 1139 <output name="hidden_output">
1021 <assert_contents> 1140 <assert_contents>
1022 <has_text_matching expression="sc.pl.heatmap"/> 1141 <has_text_matching expression="sc.pl.heatmap"/>
1023 <has_text_matching expression="var_names=adata.var_names" /> 1142 <has_text_matching expression="var_names=adata.var_names"/>
1024 <has_text_matching expression="groupby='cell_type'"/> 1143 <has_text_matching expression="groupby='cell_type'"/>
1025 <has_text_matching expression="log=False"/> 1144 <has_text_matching expression="log=False"/>
1026 <has_text_matching expression="use_raw=False"/> 1145 <has_text_matching expression="use_raw=None"/>
1027 <has_text_matching expression="num_categories=7"/> 1146 <has_text_matching expression="num_categories=7"/>
1028 <has_text_matching expression="dendrogram=True"/> 1147 <has_text_matching expression="dendrogram=True"/>
1029 <has_text_matching expression="figsize=\(10, 3\)"/> 1148 <has_text_matching expression="figsize=\(10, 3\)"/>
1030 <has_text_matching expression="swap_axes=True"/> 1149 <has_text_matching expression="swap_axes=True"/>
1031 <has_text_matching expression="show_gene_labels=False"/> 1150 <has_text_matching expression="show_gene_labels=False"/>
1032 <has_text_matching expression="cmap='YlGnBu'"/> 1151 <has_text_matching expression="cmap='YlGnBu'"/>
1033 <has_text_matching expression="origin='upper'"/> 1152 <has_text_matching expression="origin='upper'"/>
1034 </assert_contents> 1153 </assert_contents>
1035 </output> 1154 </output>
1036 <output name="out_png" file="pl.heatmap.krumsiek11.png" ftype="png" compare="sim_size"/> 1155 <output name="out_png" file="pl.heatmap.krumsiek11.png" ftype="png" compare="image_diff"/>
1037 </test> 1156 </test>
1038 <test expect_num_outputs="2"> 1157
1039 <!-- test 4: pl.heatmap with symbols --> 1158 <!-- test 5 -->
1040 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad" /> 1159 <test expect_num_outputs="2">
1041 <param name="format" value="png"/> 1160 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad"/>
1042 <conditional name="method"> 1161 <param name="format" value="png"/>
1043 <param name="method" value="pl.heatmap"/> 1162 <conditional name="method">
1044 <conditional name="var_names"> 1163 <param name="method" value="pl.heatmap"/>
1045 <param name="type" value="custom"/> 1164 <conditional name="var_names">
1046 <param name="var_names" value="Fog1,EKLF,SCL"/> 1165 <param name="type" value="custom"/>
1047 </conditional> 1166 <param name="var_names" value="Fog1,EKLF,SCL"/>
1048 <param name="groupby" value="cell_type"/> 1167 </conditional>
1049 <param name="gene_symbols" value="symbol"/> 1168 <param name="gene_symbols" value="symbol"/>
1050 <param name="num_categories" value="7"/> 1169 <param name="groupby" value="cell_type"/>
1051 <param name="log" value="False"/> 1170 <conditional name="figsize">
1052 <param name="use_raw" value="False"/> 1171 <param name="custom" value="yes"/>
1053 <conditional name="figsize"> 1172 <param name="width" value="10"/>
1054 <param name="test" value="yes"/> 1173 <param name="height" value="3"/>
1055 <param name="width" value="10" /> 1174 </conditional>
1056 <param name="height" value="3"/> 1175 <param name="dendrogram" value="True"/>
1057 </conditional> 1176 <param name="swap_axes" value="True"/>
1058 <param name="dendrogram" value="True"/> 1177 <param name="show_gene_labels" value="True"/>
1059 <param name="swap_axes" value="True"/> 1178 <section name="matplotlib_pyplot_imshow">
1060 <param name="show_gene_labels" value="True"/> 1179 <param name="cmap" value="YlGnBu"/>
1061 <section name="matplotlib_pyplot_imshow"> 1180 </section>
1062 <param name="cmap" value="YlGnBu"/> 1181 </conditional>
1063 <param name="interpolation" value="None"/> 1182 <section name="advanced_common">
1064 <param name="origin" value="upper"/> 1183 <param name="show_log" value="true"/>
1065 </section> 1184 </section>
1066 </conditional> 1185 <output name="hidden_output">
1067 <section name="advanced_common"> 1186 <assert_contents>
1068 <param name="show_log" value="true" /> 1187 <has_text_matching expression="sc.pl.heatmap"/>
1069 </section> 1188 <has_text_matching expression="gene_symbols='symbol'"/>
1070 <output name="hidden_output"> 1189 <has_text_matching expression="var_names=\['Fog1', 'EKLF', 'SCL'\]"/>
1071 <assert_contents> 1190 <has_text_matching expression="groupby='cell_type'"/>
1072 <has_text_matching expression="sc.pl.heatmap"/> 1191 <has_text_matching expression="log=False"/>
1073 <has_text_matching expression="gene_symbols='symbol'"/> 1192 <has_text_matching expression="use_raw=None"/>
1074 <has_text_matching expression="var_names=\['Fog1', 'EKLF', 'SCL'\]" /> 1193 <has_text_matching expression="num_categories=7"/>
1075 <has_text_matching expression="groupby='cell_type'"/> 1194 <has_text_matching expression="dendrogram=True"/>
1076 <has_text_matching expression="log=False"/> 1195 <has_text_matching expression="figsize=\(10, 3\)"/>
1077 <has_text_matching expression="use_raw=False"/> 1196 <has_text_matching expression="swap_axes=True"/>
1078 <has_text_matching expression="num_categories=7"/> 1197 <has_text_matching expression="show_gene_labels=True"/>
1079 <has_text_matching expression="dendrogram=True"/> 1198 <has_text_matching expression="cmap='YlGnBu'"/>
1080 <has_text_matching expression="figsize=\(10, 3\)"/> 1199 <has_text_matching expression="origin='upper'"/>
1081 <has_text_matching expression="swap_axes=True"/> 1200 </assert_contents>
1082 <has_text_matching expression="show_gene_labels=True"/> 1201 </output>
1083 <has_text_matching expression="cmap='YlGnBu'"/> 1202 </test>
1084 <has_text_matching expression="origin='upper'"/> 1203
1085 </assert_contents> 1204 <!-- test 6 -->
1086 </output> 1205 <test expect_num_outputs="2">
1087 </test> 1206 <param name="adata" value="pbmc68k_reduced.h5ad"/>
1088 <test expect_num_outputs="2">
1089 <!-- test 5: pl.dotplot -->
1090 <param name="adata" value="pbmc68k_reduced.h5ad" />
1091 <param name="format" value="png"/> 1207 <param name="format" value="png"/>
1092 <conditional name="method"> 1208 <conditional name="method">
1093 <param name="method" value="pl.dotplot"/> 1209 <param name="method" value="pl.dotplot"/>
1094 <conditional name="var_names"> 1210 <conditional name="var_names">
1095 <param name="type" value="custom"/> 1211 <param name="type" value="custom"/>
1096 <param name="var_names" value="CD79A, MS4A1, CD8A, CD8B, LYZ, GNLY, NKG7, RP3-467N11.1, FCGR3A, FCER1A, CST3, POU2AF1, LINC00402"/> 1212 <param name="var_names" value="CD79A, MS4A1, CD8A, CD8B, LYZ, GNLY, NKG7, RP3-467N11.1, FCGR3A, FCER1A, CST3, POU2AF1, LINC00402"/>
1097 </conditional> 1213 </conditional>
1098 <param name="groupby" value="louvain"/> 1214 <param name="groupby" value="louvain"/>
1099 <param name="num_categories" value="7"/>
1100 <param name="log" value="False"/>
1101 <param name="use_raw" value="False"/>
1102 <param name="dendrogram" value="True"/> 1215 <param name="dendrogram" value="True"/>
1103 <repeat name="var_group_positions"> 1216 <repeat name="var_group_positions">
1104 <param name="start" value="0"/> 1217 <param name="start" value="0"/>
1105 <param name="end" value="1"/> 1218 <param name="end" value="1"/>
1106 <param name="label" value="B cells"/> 1219 <param name="label" value="B cells"/>
1108 <repeat name="var_group_positions"> 1221 <repeat name="var_group_positions">
1109 <param name="start" value="11"/> 1222 <param name="start" value="11"/>
1110 <param name="end" value="12"/> 1223 <param name="end" value="12"/>
1111 <param name="label" value="dendritic"/> 1224 <param name="label" value="dendritic"/>
1112 </repeat> 1225 </repeat>
1113 <conditional name="figsize">
1114 <param name="test" value="no"/>
1115 </conditional>
1116 <param name="color_map" value="hot"/> 1226 <param name="color_map" value="hot"/>
1117 <param name="dot_max" value="0.7"/> 1227 <param name="dot_max" value="0.7"/>
1118 <param name="dot_min" value="0.1"/> 1228 <param name="dot_min" value="0.1"/>
1119 <section name="matplotlib_pyplot_scatter"> 1229 <section name="matplotlib_pyplot_scatter">
1120 <param name="linewidths" value="0" /> 1230 </section>
1121 <param name="edgecolors" value="face"/> 1231 </conditional>
1122 </section> 1232 <section name="advanced_common">
1123 </conditional> 1233 <param name="show_log" value="true"/>
1124 <section name="advanced_common">
1125 <param name="show_log" value="true" />
1126 </section> 1234 </section>
1127 <output name="hidden_output"> 1235 <output name="hidden_output">
1128 <assert_contents> 1236 <assert_contents>
1129 <has_text_matching expression="sc.pl.dotplot"/> 1237 <has_text_matching expression="sc.pl.dotplot"/>
1130 <has_text_matching expression="var_names=\['CD79A', 'MS4A1', 'CD8A', 'CD8B', 'LYZ', 'GNLY', 'NKG7', 'RP3-467N11.1', 'FCGR3A', 'FCER1A', 'CST3', 'POU2AF1', 'LINC00402'\]" /> 1238 <has_text_matching expression="var_names=\['CD79A', 'MS4A1', 'CD8A', 'CD8B', 'LYZ', 'GNLY', 'NKG7', 'RP3-467N11.1', 'FCGR3A', 'FCER1A', 'CST3', 'POU2AF1', 'LINC00402'\]"/>
1131 <has_text_matching expression="groupby='louvain'"/> 1239 <has_text_matching expression="groupby='louvain'"/>
1132 <has_text_matching expression="log=False"/> 1240 <has_text_matching expression="log=False"/>
1133 <has_text_matching expression="use_raw=False"/> 1241 <has_text_matching expression="use_raw=None"/>
1134 <has_text_matching expression="num_categories=7"/> 1242 <has_text_matching expression="num_categories=7"/>
1135 <has_text_matching expression="dendrogram=True"/> 1243 <has_text_matching expression="dendrogram=True"/>
1136 <has_text_matching expression="var_group_positions=\[\(0, 1\), \(11, 12\)\]"/> 1244 <has_text_matching expression="var_group_positions=\[\(0, 1\), \(11, 12\)\]"/>
1137 <has_text_matching expression="var_group_labels=\['B cells', 'dendritic'\]"/> 1245 <has_text_matching expression="var_group_labels=\['B cells', 'dendritic'\]"/>
1138 <has_text_matching expression="color_map='hot'"/> 1246 <has_text_matching expression="color_map='hot'"/>
1139 <has_text_matching expression="dot_max=0.7"/> 1247 <has_text_matching expression="dot_max=0.7"/>
1140 <has_text_matching expression="dot_min=0.1"/> 1248 <has_text_matching expression="dot_min=0.1"/>
1141 <has_text_matching expression="lw=0.0"/> 1249 </assert_contents>
1142 <has_text_matching expression="ec='face'"/> 1250 </output>
1143 </assert_contents> 1251 <output name="out_png" file="pl.dotplot.krumsiek11.png" ftype="png" compare="image_diff"/>
1144 </output> 1252 </test>
1145 <output name="out_png" file="pl.dotplot.krumsiek11.png" ftype="png" compare="sim_size"/> 1253
1146 </test> 1254 <!-- test 7 -->
1147 <test expect_num_outputs="2"> 1255 <test expect_num_outputs="2">
1148 <!-- test 6: pl.dotplot with symbols --> 1256 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad"/>
1149 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad" /> 1257 <param name="format" value="png"/>
1150 <param name="format" value="png"/> 1258 <conditional name="method">
1151 <conditional name="method"> 1259 <param name="method" value="pl.dotplot"/>
1152 <param name="method" value="pl.dotplot"/> 1260 <conditional name="var_names">
1153 <conditional name="var_names"> 1261 <param name="type" value="custom"/>
1154 <param name="type" value="custom"/> 1262 <param name="var_names" value="Fog1,EKLF,SCL"/>
1155 <param name="var_names" value="Fog1,EKLF,SCL"/> 1263 </conditional>
1156 </conditional> 1264 <param name="gene_symbols" value="symbol"/>
1157 <param name="groupby" value="cell_type"/> 1265 <param name="groupby" value="cell_type"/>
1158 <param name="gene_symbols" value="symbol"/> 1266 <param name="dendrogram" value="True"/>
1159 <param name="num_categories" value="7"/> 1267 <section name="matplotlib_pyplot_imshow">
1160 <param name="log" value="False"/> 1268 <param name="cmap" value="YlGnBu"/>
1161 <param name="use_raw" value="False"/> 1269 </section>
1162 <param name="dendrogram" value="True"/> 1270 </conditional>
1163 <section name="matplotlib_pyplot_imshow"> 1271 <section name="advanced_common">
1164 <param name="cmap" value="YlGnBu"/> 1272 <param name="show_log" value="true"/>
1165 <param name="interpolation" value="None"/> 1273 </section>
1166 <param name="origin" value="upper"/> 1274 <output name="hidden_output">
1167 </section> 1275 <assert_contents>
1168 </conditional> 1276 <has_text_matching expression="sc.pl.dotplot"/>
1169 <section name="advanced_common"> 1277 <has_text_matching expression="gene_symbols='symbol'"/>
1170 <param name="show_log" value="true" /> 1278 <has_text_matching expression="var_names=\['Fog1', 'EKLF', 'SCL'\]"/>
1171 </section> 1279 <has_text_matching expression="groupby='cell_type'"/>
1172 <output name="hidden_output"> 1280 <has_text_matching expression="log=False"/>
1173 <assert_contents> 1281 <has_text_matching expression="use_raw=None"/>
1174 <has_text_matching expression="sc.pl.dotplot"/> 1282 <has_text_matching expression="num_categories=7"/>
1175 <has_text_matching expression="gene_symbols='symbol'"/> 1283 <has_text_matching expression="dendrogram=True"/>
1176 <has_text_matching expression="var_names=\['Fog1', 'EKLF', 'SCL'\]" /> 1284 </assert_contents>
1177 <has_text_matching expression="groupby='cell_type'"/> 1285 </output>
1178 <has_text_matching expression="log=False"/> 1286 </test>
1179 <has_text_matching expression="use_raw=False"/> 1287
1180 <has_text_matching expression="num_categories=7"/> 1288 <!-- test 8 -->
1181 <has_text_matching expression="dendrogram=True"/> 1289 <test expect_num_outputs="2">
1182 </assert_contents> 1290 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad"/>
1183 </output> 1291 <param name="format" value="png"/>
1184 </test> 1292 <conditional name="method">
1185 <test expect_num_outputs="2"> 1293 <param name="method" value="pl.tracksplot"/>
1186 <!-- test 7: pl.violin --> 1294 <param name="gene_symbols" value="symbol"/>
1187 <param name="adata" value="pbmc68k_reduced.h5ad" /> 1295 <param name="groupby" value="cell_type"/>
1296 <param name="dendrogram" value="True"/>
1297 <section name="matplotlib_pyplot_imshow">
1298 <param name="cmap" value="YlGnBu"/>
1299 </section>
1300 </conditional>
1301 <section name="advanced_common">
1302 <param name="show_log" value="true"/>
1303 </section>
1304 <output name="hidden_output">
1305 <assert_contents>
1306 <has_text_matching expression="sc.pl.tracksplot"/>
1307 <has_text_matching expression="gene_symbols='symbol'"/>
1308 <has_text_matching expression="groupby='cell_type'"/>
1309 <has_text_matching expression="log=False"/>
1310 <has_text_matching expression="use_raw=None"/>
1311 <has_text_matching expression="num_categories=7"/>
1312 <has_text_matching expression="dendrogram=True"/>
1313 </assert_contents>
1314 </output>
1315 </test>
1316
1317 <!-- test 9 -->
1318 <test expect_num_outputs="2">
1319 <param name="adata" value="pbmc68k_reduced.h5ad"/>
1188 <param name="format" value="png"/> 1320 <param name="format" value="png"/>
1189 <conditional name="method"> 1321 <conditional name="method">
1190 <param name="method" value="pl.violin"/> 1322 <param name="method" value="pl.violin"/>
1191 <conditional name="key_variables"> 1323 <conditional name="key_variables">
1192 <param name="type" value="custom"/> 1324 <param name="type" value="custom"/>
1193 <param name="keys" value="n_genes, percent_mito, n_counts" /> 1325 <param name="keys" value="n_genes, percent_mito, n_counts"/>
1194 </conditional> 1326 </conditional>
1195 <param name="log" value="False"/>
1196 <param name="use_raw" value="False"/>
1197 <section name="violin_plot"> 1327 <section name="violin_plot">
1198 <conditional name="stripplot">
1199 <param name="stripplot" value="True"/>
1200 <param name="jitter" value="True"/>
1201 <param name="size" value="1"/>
1202 </conditional>
1203 <conditional name="multi_panel"> 1328 <conditional name="multi_panel">
1204 <param name="multi_panel" value="True"/> 1329 <param name="multi_panel" value="True"/>
1205 <param name="width" value="20"/>
1206 <param name="height" value="20"/>
1207 </conditional> 1330 </conditional>
1208 <param name="scale" value="width"/>
1209 </section> 1331 </section>
1210 <section name="seaborn_violinplot"> 1332 <section name="seaborn_violinplot">
1211 <param name="bw" value="scott"/>
1212 <param name="linewidth" value="0"/> 1333 <param name="linewidth" value="0"/>
1213 <param name="color" value="AliceBlue"/> 1334 </section>
1214 <param name="palette" value="viridis"/> 1335 </conditional>
1215 <param name="saturation" value="0.75"/> 1336 <section name="advanced_common">
1216 </section> 1337 <param name="show_log" value="true"/>
1217 </conditional>
1218 <section name="advanced_common">
1219 <param name="show_log" value="true" />
1220 </section> 1338 </section>
1221 <output name="hidden_output"> 1339 <output name="hidden_output">
1222 <assert_contents> 1340 <assert_contents>
1223 <has_text_matching expression="sc.pl.violin"/> 1341 <has_text_matching expression="sc.pl.violin"/>
1224 <has_text_matching expression="keys=\['n_genes', 'percent_mito', 'n_counts'\]" /> 1342 <has_text_matching expression="keys=\['n_genes', 'percent_mito', 'n_counts'\]"/>
1225 <has_text_matching expression="log=False"/> 1343 <has_text_matching expression="log=False"/>
1226 <has_text_matching expression="use_raw=False"/> 1344 <has_text_matching expression="use_raw=None"/>
1227 <has_text_matching expression="stripplot=True"/> 1345 <has_text_matching expression="stripplot=True"/>
1228 <has_text_matching expression="jitter=True"/> 1346 <has_text_matching expression="jitter=True"/>
1229 <has_text_matching expression="size=1"/> 1347 <has_text_matching expression="size=1"/>
1230 <has_text_matching expression="multi_panel=True"/> 1348 <has_text_matching expression="multi_panel=True"/>
1231 <has_text_matching expression="figsize=\(20, 20\)"/> 1349 <has_text_matching expression="bw_method='scott'"/>
1232 <has_text_matching expression="scale='width'"/>
1233 <has_text_matching expression="bw='scott'"/>
1234 <has_text_matching expression="scale='width'"/>
1235 <has_text_matching expression="linewidth=0.0"/>
1236 <has_text_matching expression="color='AliceBlue'"/>
1237 <has_text_matching expression="saturation=0.75"/> 1350 <has_text_matching expression="saturation=0.75"/>
1238 </assert_contents> 1351 </assert_contents>
1239 </output> 1352 </output>
1240 <output name="out_png" file="pl.violin.pbmc68k_reduced_custom.png" ftype="png" compare="sim_size"/> 1353 <output name="out_png" file="pl.violin.pbmc68k_reduced_custom.png" ftype="png" compare="image_diff" eps="0.4"/>
1241 </test> 1354 </test>
1242 <test expect_num_outputs="2"> 1355
1243 <!-- test 8: pl.stacked_violin --> 1356 <!-- test 10 -->
1244 <param name="adata" value="krumsiek11.h5ad" /> 1357 <test expect_num_outputs="2">
1358 <param name="adata" value="krumsiek11.h5ad"/>
1245 <param name="format" value="png"/> 1359 <param name="format" value="png"/>
1246 <conditional name="method"> 1360 <conditional name="method">
1247 <param name="method" value="pl.stacked_violin"/> 1361 <param name="method" value="pl.stacked_violin"/>
1248 <conditional name="var_names">
1249 <param name="type" value="all"/>
1250 </conditional>
1251 <param name="groupby" value="cell_type"/> 1362 <param name="groupby" value="cell_type"/>
1252 <param name="num_categories" value="7"/>
1253 <param name="log" value="False"/>
1254 <param name="use_raw" value="False"/>
1255 <param name="dendrogram" value="True"/> 1363 <param name="dendrogram" value="True"/>
1256 <conditional name="figsize">
1257 <param name="test" value="no"/>
1258 </conditional>
1259 <param name="swap_axes" value="True"/> 1364 <param name="swap_axes" value="True"/>
1260 <section name="violin_plot"> 1365 <section name="violin_plot">
1261 <conditional name="stripplot"> 1366 <param name="density_norm" value="width"/>
1262 <param name="stripplot" value="True"/> 1367 </section>
1263 <param name="jitter" value="True"/>
1264 <param name="size" value="1"/>
1265 </conditional>
1266 <param name="scale" value="width"/>
1267 </section>
1268 <param name="row_palette" value="muted"/>
1269 <param name="standard_scale" value="None"/>
1270 <section name="seaborn_violinplot"> 1368 <section name="seaborn_violinplot">
1271 <param name="bw" value="scott"/>
1272 <param name="linewidth" value="0"/> 1369 <param name="linewidth" value="0"/>
1273 <param name="color" value="AliceBlue"/> 1370 </section>
1274 <param name="saturation" value="0.75"/> 1371 </conditional>
1275 </section> 1372 <section name="advanced_common">
1276 </conditional> 1373 <param name="show_log" value="true"/>
1277 <section name="advanced_common">
1278 <param name="show_log" value="true" />
1279 </section> 1374 </section>
1280 <output name="hidden_output"> 1375 <output name="hidden_output">
1281 <assert_contents> 1376 <assert_contents>
1282 <has_text_matching expression="sc.pl.stacked_violin"/> 1377 <has_text_matching expression="sc.pl.stacked_violin"/>
1283 <has_text_matching expression="groupby='cell_type'"/> 1378 <has_text_matching expression="groupby='cell_type'"/>
1284 <has_text_matching expression="log=False"/> 1379 <has_text_matching expression="log=False"/>
1285 <has_text_matching expression="use_raw=False"/> 1380 <has_text_matching expression="use_raw=None"/>
1286 <has_text_matching expression="num_categories=7"/> 1381 <has_text_matching expression="num_categories=7"/>
1287 <has_text_matching expression="dendrogram=True"/> 1382 <has_text_matching expression="dendrogram=True"/>
1288 <has_text_matching expression="swap_axes=True"/> 1383 <has_text_matching expression="swap_axes=True"/>
1289 <has_text_matching expression="stripplot=True"/> 1384 <has_text_matching expression="stripplot=True"/>
1290 <has_text_matching expression="jitter=True"/> 1385 <has_text_matching expression="jitter=True"/>
1291 <has_text_matching expression="size=1"/> 1386 <has_text_matching expression="size=1"/>
1292 <has_text_matching expression="scale='width'"/> 1387 <has_text_matching expression="density_norm='width'"/>
1293 <has_text_matching expression="bw='scott'"/> 1388 <has_text_matching expression="bw_method='scott'"/>
1294 <has_text_matching expression="scale='width'"/>
1295 <has_text_matching expression="linewidth=0.0"/>
1296 <has_text_matching expression="color='AliceBlue'"/>
1297 <has_text_matching expression="saturation=0.75"/> 1389 <has_text_matching expression="saturation=0.75"/>
1298 </assert_contents> 1390 </assert_contents>
1299 </output> 1391 </output>
1300 <output name="out_png" file="pl.stacked_violin.krumsiek11.png" ftype="png" compare="sim_size"/> 1392 <output name="out_png" file="pl.stacked_violin.krumsiek11.png" ftype="png" compare="image_diff" eps="1.1"/>
1301 </test> 1393 </test>
1302 <test expect_num_outputs="2"> 1394
1303 <!-- test 9: pl.stacked_violin with symbols --> 1395 <!-- test 11 -->
1304 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad" /> 1396 <test expect_num_outputs="2">
1305 <param name="format" value="png"/> 1397 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad"/>
1306 <conditional name="method"> 1398 <param name="format" value="png"/>
1307 <param name="method" value="pl.stacked_violin"/> 1399 <conditional name="method">
1308 <conditional name="var_names"> 1400 <param name="method" value="pl.stacked_violin"/>
1309 <param name="type" value="custom"/>
1310 <param name="var_names" value="Fog1,EKLF,SCL"/>
1311 </conditional>
1312 <param name="groupby" value="cell_type"/>
1313 <param name="gene_symbols" value="symbol"/>
1314 <param name="num_categories" value="7"/>
1315 <param name="log" value="False"/>
1316 <param name="use_raw" value="False"/>
1317 <param name="dendrogram" value="True"/>
1318 <param name="swap_axes" value="True"/>
1319 </conditional>
1320 <section name="advanced_common">
1321 <param name="show_log" value="true" />
1322 </section>
1323 <output name="hidden_output">
1324 <assert_contents>
1325 <has_text_matching expression="sc.pl.stacked_violin"/>
1326 <has_text_matching expression="gene_symbols='symbol'"/>
1327 <has_text_matching expression="var_names=\['Fog1', 'EKLF', 'SCL'\]" />
1328 <has_text_matching expression="groupby='cell_type'"/>
1329 <has_text_matching expression="log=False"/>
1330 <has_text_matching expression="use_raw=False"/>
1331 <has_text_matching expression="num_categories=7"/>
1332 <has_text_matching expression="dendrogram=True"/>
1333 <has_text_matching expression="swap_axes=True"/>
1334 </assert_contents>
1335 </output>
1336 </test>
1337 <test expect_num_outputs="2">
1338 <!-- test 10: pl.matrixplot -->
1339 <param name="adata" value="krumsiek11.h5ad" />
1340 <param name="format" value="png"/>
1341 <conditional name="method">
1342 <param name="method" value="pl.matrixplot"/>
1343 <conditional name="var_names"> 1401 <conditional name="var_names">
1344 <param name="type" value="all"/> 1402 <param name="type" value="custom"/>
1403 <param name="var_names" value="Fog1,EKLF,SCL"/>
1345 </conditional> 1404 </conditional>
1405 <param name="gene_symbols" value="symbol"/>
1346 <param name="groupby" value="cell_type"/> 1406 <param name="groupby" value="cell_type"/>
1347 <param name="log" value="False"/>
1348 <param name="use_raw" value="False"/>
1349 <param name="num_categories" value="7"/>
1350 <param name="dendrogram" value="True"/> 1407 <param name="dendrogram" value="True"/>
1351 <conditional name="figsize">
1352 <param name="test" value="no"/>
1353 </conditional>
1354 <param name="swap_axes" value="True"/> 1408 <param name="swap_axes" value="True"/>
1355 <section name="matplotlib_pyplot_pcolor"> 1409 </conditional>
1356 <param name="cmap" value="viridis"/> 1410 <section name="advanced_common">
1357 <param name="edgecolors" value="face"/> 1411 <param name="show_log" value="true"/>
1358 <param name="snap" value="False"/> 1412 </section>
1359 </section> 1413 <output name="hidden_output">
1360 </conditional> 1414 <assert_contents>
1361 <section name="advanced_common"> 1415 <has_text_matching expression="sc.pl.stacked_violin"/>
1362 <param name="show_log" value="true" /> 1416 <has_text_matching expression="gene_symbols='symbol'"/>
1363 </section> 1417 <has_text_matching expression="var_names=\['Fog1', 'EKLF', 'SCL'\]"/>
1364 <output name="hidden_output">
1365 <assert_contents>
1366 <has_text_matching expression="sc.pl.matrixplot"/>
1367 <has_text_matching expression="var_names=adata.var_names" />
1368 <has_text_matching expression="groupby='cell_type'"/> 1418 <has_text_matching expression="groupby='cell_type'"/>
1369 <has_text_matching expression="log=False"/> 1419 <has_text_matching expression="log=False"/>
1370 <has_text_matching expression="use_raw=False"/> 1420 <has_text_matching expression="use_raw=None"/>
1371 <has_text_matching expression="num_categories=7"/> 1421 <has_text_matching expression="num_categories=7"/>
1372 <has_text_matching expression="dendrogram=True"/> 1422 <has_text_matching expression="dendrogram=True"/>
1373 <has_text_matching expression="swap_axes=True"/> 1423 <has_text_matching expression="swap_axes=True"/>
1374 <has_text_matching expression="cmap='viridis'"/> 1424 </assert_contents>
1375 <has_text_matching expression="ec='face'"/> 1425 </output>
1426 <output name="out_png" file="pl.stacked_violin_pp.filter_genes_dispersion.krumsiek11-seurat.png" compare="image_diff" eps="0.6"/>
1427 </test>
1428
1429 <!-- test 12 -->
1430 <test expect_num_outputs="2">
1431 <param name="adata" value="krumsiek11.h5ad"/>
1432 <param name="format" value="png"/>
1433 <conditional name="method">
1434 <param name="method" value="pl.matrixplot"/>
1435 <param name="groupby" value="cell_type"/>
1436 <param name="dendrogram" value="True"/>
1437 <param name="swap_axes" value="True"/>
1438 </conditional>
1439 <section name="advanced_common">
1440 <param name="show_log" value="true"/>
1441 </section>
1442 <output name="hidden_output">
1443 <assert_contents>
1444 <has_text_matching expression="sc.pl.matrixplot"/>
1445 <has_text_matching expression="var_names=adata.var_names"/>
1446 <has_text_matching expression="groupby='cell_type'"/>
1447 <has_text_matching expression="log=False"/>
1448 <has_text_matching expression="use_raw=None"/>
1449 <has_text_matching expression="num_categories=7"/>
1450 <has_text_matching expression="dendrogram=True"/>
1451 <has_text_matching expression="swap_axes=True"/>
1376 <has_text_matching expression="snap=False"/> 1452 <has_text_matching expression="snap=False"/>
1377 </assert_contents> 1453 </assert_contents>
1378 </output> 1454 </output>
1379 <output name="out_png" file="pl.matrixplot.krumsiek11.png" ftype="png" compare="sim_size"/> 1455 <output name="out_png" file="pl.matrixplot.krumsiek11.png" ftype="png" compare="image_diff"/>
1380 </test> 1456 </test>
1381 <test expect_num_outputs="2"> 1457
1382 <!-- test 11: pl.matrixplot with symbols --> 1458 <!-- test 13 -->
1383 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad" /> 1459 <test expect_num_outputs="2">
1384 <param name="format" value="png"/> 1460 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad"/>
1385 <conditional name="method"> 1461 <param name="format" value="png"/>
1386 <param name="method" value="pl.matrixplot"/> 1462 <conditional name="method">
1387 <conditional name="var_names"> 1463 <param name="method" value="pl.matrixplot"/>
1388 <param name="type" value="custom"/> 1464 <conditional name="var_names">
1389 <param name="var_names" value="Fog1,EKLF,SCL"/> 1465 <param name="type" value="custom"/>
1390 </conditional> 1466 <param name="var_names" value="Fog1,EKLF,SCL"/>
1391 <param name="groupby" value="cell_type"/> 1467 </conditional>
1392 <param name="gene_symbols" value="symbol"/> 1468 <param name="gene_symbols" value="symbol"/>
1393 <param name="num_categories" value="7"/> 1469 <param name="groupby" value="cell_type"/>
1394 <param name="log" value="False"/> 1470 <conditional name="figsize">
1395 <param name="use_raw" value="False"/> 1471 <param name="custom" value="yes"/>
1396 <conditional name="figsize"> 1472 <param name="width" value="10"/>
1397 <param name="test" value="yes"/> 1473 <param name="height" value="3"/>
1398 <param name="width" value="10" /> 1474 </conditional>
1399 <param name="height" value="3"/> 1475 <param name="dendrogram" value="True"/>
1400 </conditional> 1476 </conditional>
1401 <param name="dendrogram" value="True"/> 1477 <section name="advanced_common">
1402 <param name="swap_axes" value="False"/> 1478 <param name="show_log" value="true"/>
1403 </conditional> 1479 </section>
1404 <section name="advanced_common"> 1480 <output name="hidden_output">
1405 <param name="show_log" value="true" /> 1481 <assert_contents>
1406 </section> 1482 <has_text_matching expression="sc.pl.matrixplot"/>
1407 <output name="hidden_output"> 1483 <has_text_matching expression="gene_symbols='symbol'"/>
1408 <assert_contents> 1484 <has_text_matching expression="var_names=\['Fog1', 'EKLF', 'SCL'\]"/>
1409 <has_text_matching expression="sc.pl.matrixplot"/> 1485 <has_text_matching expression="groupby='cell_type'"/>
1410 <has_text_matching expression="gene_symbols='symbol'"/> 1486 <has_text_matching expression="log=False"/>
1411 <has_text_matching expression="var_names=\['Fog1', 'EKLF', 'SCL'\]" /> 1487 <has_text_matching expression="use_raw=None"/>
1412 <has_text_matching expression="groupby='cell_type'"/> 1488 <has_text_matching expression="num_categories=7"/>
1413 <has_text_matching expression="log=False"/> 1489 <has_text_matching expression="dendrogram=True"/>
1414 <has_text_matching expression="use_raw=False"/> 1490 <has_text_matching expression="swap_axes=False"/>
1415 <has_text_matching expression="num_categories=7"/> 1491 </assert_contents>
1416 <has_text_matching expression="dendrogram=True"/> 1492 </output>
1417 <has_text_matching expression="swap_axes=False"/> 1493 </test>
1418 </assert_contents> 1494
1419 </output> 1495 <!-- test 14 -->
1420 </test> 1496 <test expect_num_outputs="2">
1421 <test expect_num_outputs="2"> 1497 <param name="adata" value="krumsiek11.h5ad"/>
1422 <!-- test 12: pl.clustermap -->
1423 <param name="adata" value="krumsiek11.h5ad" />
1424 <param name="format" value="png"/> 1498 <param name="format" value="png"/>
1425 <conditional name="method"> 1499 <conditional name="method">
1426 <param name="method" value="pl.clustermap"/> 1500 <param name="method" value="pl.clustermap"/>
1427 <param name="use_raw" value="False"/>
1428 <section name="seaborn_clustermap"> 1501 <section name="seaborn_clustermap">
1429 <param name="method" value="single"/> 1502 <param name="method" value="single"/>
1430 <param name="metric" value="euclidean"/>
1431 <param name="z_score" value="None"/>
1432 <param name="standard_scale" value="None"/>
1433 <param name="col_cluster" value="False"/> 1503 <param name="col_cluster" value="False"/>
1434 <param name="row_cluster" value="False"/> 1504 <param name="row_cluster" value="False"/>
1435 </section> 1505 </section>
1436 </conditional> 1506 </conditional>
1437 <section name="advanced_common"> 1507 <section name="advanced_common">
1438 <param name="show_log" value="true" /> 1508 <param name="show_log" value="true"/>
1439 </section> 1509 </section>
1440 <output name="hidden_output"> 1510 <output name="hidden_output">
1441 <assert_contents> 1511 <assert_contents>
1442 <has_text_matching expression="sc.pl.clustermap"/> 1512 <has_text_matching expression="sc.pl.clustermap"/>
1443 <has_text_matching expression="adata=adata" /> 1513 <has_text_matching expression="adata=adata"/>
1444 <has_text_matching expression="use_raw=False"/> 1514 <has_text_matching expression="use_raw=False"/>
1445 <has_text_matching expression="method='single'"/> 1515 <has_text_matching expression="method='single'"/>
1446 <has_text_matching expression="metric='euclidean'"/> 1516 <has_text_matching expression="metric='euclidean'"/>
1447 <has_text_matching expression="col_cluster=False"/> 1517 <has_text_matching expression="col_cluster=False"/>
1448 <has_text_matching expression="row_cluster=False"/> 1518 <has_text_matching expression="row_cluster=False"/>
1449 </assert_contents> 1519 </assert_contents>
1450 </output> 1520 </output>
1451 <output name="out_png" file="pl.clustermap.krumsiek11.png" ftype="png" compare="sim_size"/> 1521 <output name="out_png" file="pl.clustermap.krumsiek11.png" ftype="png" compare="image_diff"/>
1452 </test> 1522 </test>
1453 <test expect_num_outputs="2"> 1523
1454 <!-- test 13: pl.highest_expr_genes --> 1524 <!-- test 15 -->
1455 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad" /> 1525 <test expect_num_outputs="2">
1526 <param name="adata" value="pp.filter_genes_dispersion.krumsiek11-seurat.h5ad"/>
1456 <param name="format" value="png"/> 1527 <param name="format" value="png"/>
1457 <conditional name="method"> 1528 <conditional name="method">
1458 <param name="method" value="pl.highest_expr_genes"/> 1529 <param name="method" value="pl.highest_expr_genes"/>
1459 <param name="n_top" value="30"/> 1530 <param name="gene_symbols" value="symbol"/>
1460 <param name="gene_symbols" value="means"/>
1461 <section name="setseaborn_boxplot"> 1531 <section name="setseaborn_boxplot">
1462 <param name="color" value="blue"/> 1532 <param name="color" value="blue"/>
1463 <param name="saturation" value="0.5"/> 1533 <param name="saturation" value="0.5"/>
1464 </section> 1534 </section>
1465 </conditional> 1535 </conditional>
1466 <section name="advanced_common"> 1536 <section name="advanced_common">
1467 <param name="show_log" value="true" /> 1537 <param name="show_log" value="true"/>
1468 </section> 1538 </section>
1469 <output name="hidden_output"> 1539 <output name="hidden_output">
1470 <assert_contents> 1540 <assert_contents>
1471 <has_text_matching expression="sc.pl.highest_expr_genes"/> 1541 <has_text_matching expression="sc.pl.highest_expr_genes"/>
1472 <has_text_matching expression="n_top=30" /> 1542 <has_text_matching expression="n_top=30"/>
1473 <has_text_matching expression="gene_symbols='means'" /> 1543 <has_text_matching expression="gene_symbols='symbol'"/>
1474 <has_text_matching expression="color='blue'"/> 1544 <has_text_matching expression="color='blue'"/>
1475 <has_text_matching expression="saturation=0.5"/> 1545 <has_text_matching expression="saturation=0.5"/>
1476 </assert_contents> 1546 </assert_contents>
1477 </output> 1547 </output>
1478 <output name="out_png" file="pl.highest_expr_genes.filter_genes_dispersion.krumsiek11-seurat.png" ftype="png" compare="sim_size"/> 1548 <output name="out_png" file="pl.highest_expr_genes.filter_genes_dispersion.krumsiek11-seurat.png" ftype="png" compare="image_diff"/>
1479 </test> 1549 </test>
1480 <test expect_num_outputs="2"> 1550
1481 <!-- test 14: pl.highly_variable_genes --> 1551 <!-- test 16 -->
1482 <param name="adata" value="pp.highly_variable_genes.seurat.blobs.h5ad" /> 1552 <test expect_num_outputs="2">
1483 <param name="format" value="png"/> 1553 <param name="adata" value="pp.highly_variable_genes.seurat.blobs.h5ad"/>
1484 <conditional name="method"> 1554 <param name="format" value="png"/>
1485 <param name="method" value="pl.highly_variable_genes"/> 1555 <conditional name="method">
1486 <param name="log" value="false"/> 1556 <param name="method" value="pl.highly_variable_genes"/>
1487 <param name="highly_variable_genes" value="true"/> 1557 </conditional>
1488 </conditional> 1558 <section name="advanced_common">
1489 <section name="advanced_common"> 1559 <param name="show_log" value="true"/>
1490 <param name="show_log" value="true" />
1491 </section> 1560 </section>
1492 <output name="hidden_output"> 1561 <output name="hidden_output">
1493 <assert_contents> 1562 <assert_contents>
1494 <has_text_matching expression="sc.pl.highly_variable_genes"/> 1563 <has_text_matching expression="sc.pl.highly_variable_genes"/>
1495 <has_text_matching expression="adata_or_result=adata" /> 1564 <has_text_matching expression="adata_or_result=adata"/>
1496 <has_text_matching expression="log=False" /> 1565 <has_text_matching expression="log=False"/>
1497 <has_text_matching expression="highly_variable_genes=True"/> 1566 <has_text_matching expression="highly_variable_genes=True"/>
1498 </assert_contents> 1567 </assert_contents>
1499 </output> 1568 </output>
1500 <output name="out_png" file="pl.highly_variable_genes.seurat.blobs.png" ftype="png" compare="sim_size"/> 1569 <output name="out_png" file="pl.highly_variable_genes.seurat.blobs.png" ftype="png" compare="image_diff"/>
1501 </test> 1570 </test>
1502 <test expect_num_outputs="2"> 1571
1503 <!-- test 15: pl.pca --> 1572 <!-- test 17 -->
1504 <param name="adata" value="pbmc68k_reduced.h5ad" /> 1573 <test expect_num_outputs="2">
1574 <param name="adata" value="pp.scrublet.krumsiek11.h5ad"/>
1575 <param name="format" value="png"/>
1576 <conditional name="method">
1577 <param name="method" value="pl.scrublet_score_distribution"/>
1578 </conditional>
1579 <section name="advanced_common">
1580 <param name="show_log" value="true"/>
1581 </section>
1582 <output name="hidden_output">
1583 <assert_contents>
1584 <has_text_matching expression="sc.pl.scrublet_score_distribution"/>
1585 <has_text_matching expression="adata=adata"/>
1586 <has_text_matching expression="scale_hist_obs='log'"/>
1587 <has_text_matching expression="scale_hist_sim='linear'"/>
1588 </assert_contents>
1589 </output>
1590 <output name="out_png" file="pl.scrublet_score_distribution.png" ftype="png" compare="image_diff"/>
1591 </test>
1592
1593 <!-- test 18 -->
1594 <test expect_num_outputs="2">
1595 <param name="adata" value="pbmc68k_reduced.h5ad"/>
1505 <param name="format" value="pdf"/> 1596 <param name="format" value="pdf"/>
1506 <conditional name="method"> 1597 <conditional name="method">
1507 <param name="method" value="pl.pca"/> 1598 <param name="method" value="pl.pca"/>
1508 <param name="color" value="CD3D,CD79A"/> 1599 <param name="color" value="CD3D,CD79A"/>
1509 <param name="use_raw" value="False"/>
1510 <param name="sort_order" value="True"/>
1511 <section name="plot"> 1600 <section name="plot">
1512 <repeat name="components"> 1601 <repeat name="components">
1513 <param name="axis1" value="1"/> 1602 <param name="axis1" value="1"/>
1514 <param name="axis2" value="2"/> 1603 <param name="axis2" value="2"/>
1515 </repeat> 1604 </repeat>
1516 <repeat name="components"> 1605 <repeat name="components">
1517 <param name="axis1" value="1"/> 1606 <param name="axis1" value="1"/>
1518 <param name="axis2" value="3"/> 1607 <param name="axis2" value="3"/>
1519 </repeat> 1608 </repeat>
1520 <param name="projection" value="2d"/>
1521 <param name="legend_loc" value="right margin"/>
1522 <param name="legend_fontsize" value="1"/> 1609 <param name="legend_fontsize" value="1"/>
1523 <param name="legend_fontweight" value="normal"/> 1610 <param name="legend_fontweight" value="normal"/>
1524 <param name="size" value="1"/> 1611 <param name="size" value="1"/>
1525 <param name="palette" value="viridis"/>
1526 <param name="frameon" value="True"/>
1527 <param name="ncols" value="2"/> 1612 <param name="ncols" value="2"/>
1528 <param name="wspace" value="0.1"/> 1613 </section>
1529 <param name="hspace" value="0.25"/> 1614 </conditional>
1530 </section> 1615 <section name="advanced_common">
1531 <section name="matplotlib_pyplot_scatter"> 1616 <param name="show_log" value="true"/>
1532 <param name="linewidths" value="0"/>
1533 <param name="edgecolors" value="face"/>
1534 </section>
1535 </conditional>
1536 <section name="advanced_common">
1537 <param name="show_log" value="true" />
1538 </section> 1617 </section>
1539 <output name="hidden_output"> 1618 <output name="hidden_output">
1540 <assert_contents> 1619 <assert_contents>
1541 <has_text_matching expression="sc.pl.pca"/> 1620 <has_text_matching expression="sc.pl.pca"/>
1542 <has_text_matching expression="save='.pdf'" /> 1621 <has_text_matching expression="save='.pdf'"/>
1543 <has_text_matching expression="color=\['CD3D', 'CD79A'\]" /> 1622 <has_text_matching expression="color=\['CD3D', 'CD79A'\]"/>
1544 <has_text_matching expression="use_raw=False" /> 1623 <has_text_matching expression="use_raw=False"/>
1545 <has_text_matching expression="sort_order=True" /> 1624 <has_text_matching expression="sort_order=True"/>
1546 <has_text_matching expression="components=\['1,2', '1,3'\]" /> 1625 <has_text_matching expression="components=\['1,2', '1,3'\]"/>
1547 <has_text_matching expression="projection='2d'" /> 1626 <has_text_matching expression="projection='2d'"/>
1548 <has_text_matching expression="legend_loc='right margin'" /> 1627 <has_text_matching expression="legend_loc='right margin'"/>
1549 <has_text_matching expression="legend_fontsize=1" /> 1628 <has_text_matching expression="legend_fontsize=1"/>
1550 <has_text_matching expression="legend_fontweight='normal'" /> 1629 <has_text_matching expression="legend_fontweight='normal'"/>
1551 <has_text_matching expression="size=1.0" /> 1630 <has_text_matching expression="size=1.0"/>
1552 <has_text_matching expression="palette='viridis'" /> 1631 <has_text_matching expression="frameon=True"/>
1553 <has_text_matching expression="frameon=True" /> 1632 <has_text_matching expression="ncols=2"/>
1554 <has_text_matching expression="ncols=2" /> 1633 <has_text_matching expression="wspace=0.1"/>
1555 <has_text_matching expression="wspace=0.1" /> 1634 <has_text_matching expression="hspace=0.25"/>
1556 <has_text_matching expression="hspace=0.25" />
1557 <has_text_matching expression="lw=0.0" />
1558 <has_text_matching expression="ec='face'" />
1559 </assert_contents> 1635 </assert_contents>
1560 </output> 1636 </output>
1561 <output name="out_pdf" file="pl.pca.pbmc68k_reduced.CD3D_CD79A_components_2d.pdf" ftype="pdf" compare="sim_size"/> 1637 <output name="out_pdf" file="pl.pca.pbmc68k_reduced.CD3D_CD79A_components_2d.pdf" ftype="pdf" compare="sim_size"/>
1562 </test> 1638 </test>
1563 <test expect_num_outputs="2"> 1639
1564 <!-- test 16: pl.pca_loadings --> 1640 <!-- test 19 -->
1565 <param name="adata" value="pp.pca.krumsiek11.h5ad" /> 1641 <test expect_num_outputs="2">
1642 <param name="adata" value="pp.pca.krumsiek11.h5ad"/>
1566 <param name="format" value="png"/> 1643 <param name="format" value="png"/>
1567 <conditional name="method"> 1644 <conditional name="method">
1568 <param name="method" value="pl.pca_loadings"/> 1645 <param name="method" value="pl.pca_loadings"/>
1569 <param name="components" value="1,2,3"/> 1646 <param name="components" value="1,2,3"/>
1570 </conditional> 1647 </conditional>
1571 <section name="advanced_common"> 1648 <section name="advanced_common">
1572 <param name="show_log" value="true" /> 1649 <param name="show_log" value="true"/>
1573 </section> 1650 </section>
1574 <output name="hidden_output"> 1651 <output name="hidden_output">
1575 <assert_contents> 1652 <assert_contents>
1576 <has_text_matching expression="sc.pl.pca_loadings"/> 1653 <has_text_matching expression="sc.pl.pca_loadings"/>
1577 <has_text_matching expression="components=\[1, 2, 3\]" /> 1654 <has_text_matching expression="components=\[1, 2, 3\]"/>
1578 </assert_contents> 1655 </assert_contents>
1579 </output> 1656 </output>
1580 <output name="out_png" file="pl.pca_loadings.pp.pca.krumsiek11.png" compare="sim_size"/> 1657 <output name="out_png" file="pl.pca_loadings.pp.pca.krumsiek11.png" compare="image_diff"/>
1581 </test> 1658 </test>
1582 <test expect_num_outputs="2"> 1659
1583 <!-- test 17: pl.pca_variance_ratio --> 1660 <!-- test 20 -->
1584 <param name="adata" value="pp.pca.krumsiek11.h5ad" /> 1661 <test expect_num_outputs="2">
1662 <param name="adata" value="pp.pca.krumsiek11.h5ad"/>
1585 <param name="format" value="png"/> 1663 <param name="format" value="png"/>
1586 <conditional name="method"> 1664 <conditional name="method">
1587 <param name="method" value="pl.pca_variance_ratio"/> 1665 <param name="method" value="pl.pca_variance_ratio"/>
1588 <param name="n_pcs" value="5"/> 1666 </conditional>
1589 <param name="log" value="False"/> 1667 <section name="advanced_common">
1590 </conditional> 1668 <param name="show_log" value="true"/>
1591 <section name="advanced_common">
1592 <param name="show_log" value="true" />
1593 </section> 1669 </section>
1594 <output name="hidden_output"> 1670 <output name="hidden_output">
1595 <assert_contents> 1671 <assert_contents>
1596 <has_text_matching expression="sc.pl.pca_variance_ratio"/> 1672 <has_text_matching expression="sc.pl.pca_variance_ratio"/>
1597 <has_text_matching expression="n_pcs=5" /> 1673 <has_text_matching expression="log=False"/>
1598 <has_text_matching expression="log=False" /> 1674 </assert_contents>
1599 </assert_contents> 1675 </output>
1600 </output> 1676 <output name="out_png" file="pl.pca_variance_ratio.pp.pca.krumsiek11.png" compare="image_diff"/>
1601 <output name="out_png" file="pl.pca_variance_ratio.pp.pca.krumsiek11.png" compare="sim_size"/> 1677 </test>
1602 </test> 1678
1603 <test expect_num_outputs="2"> 1679 <!-- test 21 -->
1604 <!-- test 18: pl.pca_overview --> 1680 <test expect_num_outputs="2">
1605 <param name="adata" value="pp.pca.krumsiek11.h5ad" /> 1681 <param name="adata" value="pp.pca.krumsiek11.h5ad"/>
1606 <param name="format" value="png"/> 1682 <param name="format" value="png"/>
1607 <conditional name="method"> 1683 <conditional name="method">
1608 <param name="method" value="pl.pca_overview"/> 1684 <param name="method" value="pl.pca_overview"/>
1609 <param name="use_raw" value="False"/>
1610 <param name="sort_order" value="True"/>
1611 <section name="plot"> 1685 <section name="plot">
1612 <param name="projection" value="2d"/>
1613 <param name="legend_loc" value="right margin"/>
1614 <param name="legend_fontsize" value="1"/> 1686 <param name="legend_fontsize" value="1"/>
1615 <param name="legend_fontweight" value="normal"/> 1687 <param name="legend_fontweight" value="normal"/>
1616 <param name="size" value="1"/> 1688 <param name="size" value="1"/>
1617 <param name="palette" value="viridis"/> 1689 </section>
1618 <param name="frameon" value="True"/> 1690 </conditional>
1619 <param name="ncols" value="4"/> 1691 <section name="advanced_common">
1620 <param name="wspace" value="0.1"/> 1692 <param name="show_log" value="true"/>
1621 <param name="hspace" value="0.25"/>
1622 </section>
1623 </conditional>
1624 <section name="advanced_common">
1625 <param name="show_log" value="true" />
1626 </section> 1693 </section>
1627 <output name="hidden_output"> 1694 <output name="hidden_output">
1628 <assert_contents> 1695 <assert_contents>
1629 <has_text_matching expression="sc.pl.pca_overview"/> 1696 <has_text_matching expression="sc.pl.pca_overview"/>
1630 <has_text_matching expression="use_raw=False"/> 1697 <has_text_matching expression="use_raw=False"/>
1632 <has_text_matching expression="projection='2d'"/> 1699 <has_text_matching expression="projection='2d'"/>
1633 <has_text_matching expression="legend_loc='right margin'"/> 1700 <has_text_matching expression="legend_loc='right margin'"/>
1634 <has_text_matching expression="legend_fontsize=1"/> 1701 <has_text_matching expression="legend_fontsize=1"/>
1635 <has_text_matching expression="legend_fontweight='normal'"/> 1702 <has_text_matching expression="legend_fontweight='normal'"/>
1636 <has_text_matching expression="size=1.0"/> 1703 <has_text_matching expression="size=1.0"/>
1637 <has_text_matching expression="palette='viridis'"/>
1638 <has_text_matching expression="frameon=True"/> 1704 <has_text_matching expression="frameon=True"/>
1639 <has_text_matching expression="ncols=4"/> 1705 <has_text_matching expression="ncols=4"/>
1640 <has_text_matching expression="wspace=0.1"/> 1706 <has_text_matching expression="wspace=0.1"/>
1641 <has_text_matching expression="hspace=0.25"/> 1707 <has_text_matching expression="hspace=0.25"/>
1642 </assert_contents> 1708 </assert_contents>
1643 </output> 1709 </output>
1644 <output name="out_png" file="pl.pca_overview.pp.pca.krumsiek11.png" compare="sim_size"/> 1710 <output name="out_png" file="pl.pca_overview.pp.pca.krumsiek11.png" compare="image_diff"/>
1645 </test> 1711 </test>
1646 <test expect_num_outputs="2"> 1712
1647 <!-- test 19: pl.tsne --> 1713 <!-- test 22 -->
1648 <param name="adata" value="tl.tsne.krumsiek11.h5ad" /> 1714 <test expect_num_outputs="2">
1715 <param name="adata" value="tl.tsne.krumsiek11.h5ad"/>
1649 <param name="format" value="png"/> 1716 <param name="format" value="png"/>
1650 <conditional name="method"> 1717 <conditional name="method">
1651 <param name="method" value="pl.tsne"/> 1718 <param name="method" value="pl.tsne"/>
1652 <param name="use_raw" value="False"/>
1653 <conditional name="edges">
1654 <param name="edges" value="False" />
1655 </conditional>
1656 <param name="arrows" value="False" />
1657 <param name="sort_order" value="True"/>
1658 <section name="plot"> 1719 <section name="plot">
1659 <param name="projection" value="2d"/>
1660 <param name="legend_loc" value="right margin"/>
1661 <param name="legend_fontsize" value="1"/> 1720 <param name="legend_fontsize" value="1"/>
1662 <param name="legend_fontweight" value="normal"/> 1721 <param name="legend_fontweight" value="normal"/>
1663 <param name="palette" value="viridis"/>
1664 <param name="frameon" value="True"/>
1665 <param name="size" value="1"/> 1722 <param name="size" value="1"/>
1666 <param name="ncols" value="4"/> 1723 </section>
1667 <param name="wspace" value="0.1"/> 1724 </conditional>
1668 <param name="hspace" value="0.25"/> 1725 <section name="advanced_common">
1669 </section> 1726 <param name="show_log" value="true"/>
1670 <section name="matplotlib_pyplot_scatter">
1671 <param name="linewidths" value="0"/>
1672 <param name="edgecolors" value="face"/>
1673 </section>
1674 </conditional>
1675 <section name="advanced_common">
1676 <param name="show_log" value="true" />
1677 </section> 1727 </section>
1678 <output name="hidden_output"> 1728 <output name="hidden_output">
1679 <assert_contents> 1729 <assert_contents>
1680 <has_text_matching expression="sc.pl.tsne"/> 1730 <has_text_matching expression="sc.pl.tsne"/>
1681 <has_text_matching expression="use_raw=False"/> 1731 <has_text_matching expression="use_raw=False"/>
1685 <has_text_matching expression="projection='2d'"/> 1735 <has_text_matching expression="projection='2d'"/>
1686 <has_text_matching expression="legend_loc='right margin'"/> 1736 <has_text_matching expression="legend_loc='right margin'"/>
1687 <has_text_matching expression="legend_fontsize=1"/> 1737 <has_text_matching expression="legend_fontsize=1"/>
1688 <has_text_matching expression="legend_fontweight='normal'"/> 1738 <has_text_matching expression="legend_fontweight='normal'"/>
1689 <has_text_matching expression="size=1.0"/> 1739 <has_text_matching expression="size=1.0"/>
1690 <has_text_matching expression="palette='viridis'"/>
1691 <has_text_matching expression="frameon=True"/> 1740 <has_text_matching expression="frameon=True"/>
1692 <has_text_matching expression="ncols=4"/> 1741 <has_text_matching expression="ncols=4"/>
1693 <has_text_matching expression="wspace=0.1"/> 1742 <has_text_matching expression="wspace=0.1"/>
1694 <has_text_matching expression="hspace=0.25"/> 1743 <has_text_matching expression="hspace=0.25"/>
1695 <has_text_matching expression="lw=0.0"/> 1744 </assert_contents>
1696 <has_text_matching expression="ec='face'"/> 1745 </output>
1697 </assert_contents> 1746 <output name="out_png" file="pl.tsne.krumsiek11.png" ftype="png" compare="image_diff"/>
1698 </output> 1747 </test>
1699 <output name="out_png" file="pl.tsne.krumsiek11.png" ftype="png" compare="sim_size"/> 1748
1700 </test> 1749 <!-- test 23 -->
1701 <test expect_num_outputs="2"> 1750 <test expect_num_outputs="2">
1702 <!-- test 20: pl.umap --> 1751 <param name="adata" value="tl.umap.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.h5ad"/>
1703 <param name="adata" value="tl.umap.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.h5ad" />
1704 <param name="format" value="png"/> 1752 <param name="format" value="png"/>
1705 <conditional name="method"> 1753 <conditional name="method">
1706 <param name="method" value="pl.umap"/> 1754 <param name="method" value="pl.umap"/>
1707 <param name="color" value="paul15_clusters"/> 1755 <param name="color" value="paul15_clusters"/>
1708 <param name="use_raw" value="False"/>
1709 <conditional name="edges"> 1756 <conditional name="edges">
1710 <param name="edges" value="True" /> 1757 <param name="edges" value="True"/>
1711 <param name="edges_width" value="0.1" />
1712 <param name="edges_color" value="AliceBlue"/>
1713 </conditional> 1758 </conditional>
1714 <param name="arrows" value="False" />
1715 <section name="plot"> 1759 <section name="plot">
1716 <param name="projection" value="2d"/>
1717 <param name="legend_loc" value="right margin"/>
1718 <param name="legend_fontsize" value="1"/> 1760 <param name="legend_fontsize" value="1"/>
1719 <param name="legend_fontweight" value="normal"/> 1761 <param name="legend_fontweight" value="normal"/>
1720 <param name="size" value="1"/> 1762 <param name="size" value="1"/>
1721 <param name="palette" value="viridis"/> 1763 </section>
1722 <param name="frameon" value="True"/> 1764 </conditional>
1723 <param name="ncols" value="4"/> 1765 <section name="advanced_common">
1724 <param name="wspace" value="0.1"/> 1766 <param name="show_log" value="true"/>
1725 <param name="hspace" value="0.25"/>
1726 </section>
1727 <section name="matplotlib_pyplot_scatter">
1728 <param name="linewidths" value="0"/>
1729 <param name="edgecolors" value="face"/>
1730 </section>
1731 </conditional>
1732 <section name="advanced_common">
1733 <param name="show_log" value="true" />
1734 </section> 1767 </section>
1735 <output name="hidden_output"> 1768 <output name="hidden_output">
1736 <assert_contents> 1769 <assert_contents>
1737 <has_text_matching expression="sc.pl.umap"/> 1770 <has_text_matching expression="sc.pl.umap"/>
1738 <has_text_matching expression="color=\['paul15_clusters'\]"/> 1771 <has_text_matching expression="color=\['paul15_clusters'\]"/>
1739 <has_text_matching expression="use_raw=False"/> 1772 <has_text_matching expression="use_raw=False"/>
1740 <has_text_matching expression="edges=True"/> 1773 <has_text_matching expression="edges=True"/>
1741 <has_text_matching expression="edges_width=0.1"/> 1774 <has_text_matching expression="edges_width=0.1"/>
1742 <has_text_matching expression="edges_color='AliceBlue'"/>
1743 <has_text_matching expression="arrows=False"/> 1775 <has_text_matching expression="arrows=False"/>
1744 <has_text_matching expression="sort_order=True"/> 1776 <has_text_matching expression="sort_order=True"/>
1745 <has_text_matching expression="projection='2d'"/> 1777 <has_text_matching expression="projection='2d'"/>
1746 <has_text_matching expression="legend_loc='right margin'"/> 1778 <has_text_matching expression="legend_loc='right margin'"/>
1747 <has_text_matching expression="legend_fontsize=1"/> 1779 <has_text_matching expression="legend_fontsize=1"/>
1748 <has_text_matching expression="legend_fontweight='normal'"/> 1780 <has_text_matching expression="legend_fontweight='normal'"/>
1749 <has_text_matching expression="size=1.0"/> 1781 <has_text_matching expression="size=1.0"/>
1750 <has_text_matching expression="palette='viridis'"/>
1751 <has_text_matching expression="frameon=True"/> 1782 <has_text_matching expression="frameon=True"/>
1752 <has_text_matching expression="ncols=4"/> 1783 <has_text_matching expression="ncols=4"/>
1753 <has_text_matching expression="wspace=0.1"/> 1784 <has_text_matching expression="wspace=0.1"/>
1754 <has_text_matching expression="hspace=0.25"/> 1785 <has_text_matching expression="hspace=0.25"/>
1755 <has_text_matching expression="lw=0.0"/> 1786
1756 <has_text_matching expression="ec='face'"/> 1787 </assert_contents>
1757 </assert_contents> 1788 </output>
1758 </output> 1789 <output name="out_png" file="pl.umap.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.png" ftype="png" compare="image_diff"/>
1759 <output name="out_png" file="pl.umap.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.png" ftype="png" compare="sim_size"/> 1790 </test>
1760 </test> 1791
1761 <test expect_num_outputs="2"> 1792 <!-- test 24 -->
1762 <!-- test 21: pl.diffmap --> 1793 <test expect_num_outputs="2">
1763 <param name="adata" value="tl.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad" /> 1794 <param name="adata" value="tl.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad"/>
1764 <param name="format" value="png"/> 1795 <param name="format" value="png"/>
1765 <conditional name="method"> 1796 <conditional name="method">
1766 <param name="method" value="pl.diffmap"/> 1797 <param name="method" value="pl.diffmap"/>
1767 <param name="color" value="paul15_clusters"/> 1798 <param name="color" value="paul15_clusters"/>
1768 <param name="use_raw" value="False"/>
1769 <param name="sort_order" value="True"/>
1770 <section name="plot"> 1799 <section name="plot">
1771 <param name="projection" value="2d"/>
1772 <param name="legend_loc" value="right margin"/>
1773 <param name="legend_fontsize" value="1"/> 1800 <param name="legend_fontsize" value="1"/>
1774 <param name="legend_fontweight" value="normal"/> 1801 <param name="legend_fontweight" value="normal"/>
1775 <param name="size" value="1"/> 1802 <param name="size" value="1"/>
1776 <param name="palette" value="viridis"/> 1803 </section>
1777 <param name="frameon" value="True"/> 1804 </conditional>
1778 <param name="ncols" value="4"/> 1805 <section name="advanced_common">
1779 <param name="wspace" value="0.1"/> 1806 <param name="show_log" value="true"/>
1780 <param name="hspace" value="0.25"/>
1781 </section>
1782 <section name="matplotlib_pyplot_scatter">
1783 <param name="linewidths" value="0"/>
1784 <param name="edgecolors" value="face"/>
1785 </section>
1786 </conditional>
1787 <section name="advanced_common">
1788 <param name="show_log" value="true" />
1789 </section> 1807 </section>
1790 <output name="hidden_output"> 1808 <output name="hidden_output">
1791 <assert_contents> 1809 <assert_contents>
1792 <has_text_matching expression="sc.pl.diffmap"/> 1810 <has_text_matching expression="sc.pl.diffmap"/>
1793 <has_text_matching expression="color=\['paul15_clusters'\]"/> 1811 <has_text_matching expression="color=\['paul15_clusters'\]"/>
1796 <has_text_matching expression="projection='2d'"/> 1814 <has_text_matching expression="projection='2d'"/>
1797 <has_text_matching expression="legend_loc='right margin'"/> 1815 <has_text_matching expression="legend_loc='right margin'"/>
1798 <has_text_matching expression="legend_fontsize=1"/> 1816 <has_text_matching expression="legend_fontsize=1"/>
1799 <has_text_matching expression="legend_fontweight='normal'"/> 1817 <has_text_matching expression="legend_fontweight='normal'"/>
1800 <has_text_matching expression="size=1.0"/> 1818 <has_text_matching expression="size=1.0"/>
1801 <has_text_matching expression="palette='viridis'"/>
1802 <has_text_matching expression="frameon=True"/> 1819 <has_text_matching expression="frameon=True"/>
1803 <has_text_matching expression="ncols=4"/> 1820 <has_text_matching expression="ncols=4"/>
1804 <has_text_matching expression="wspace=0.1"/> 1821 <has_text_matching expression="wspace=0.1"/>
1805 <has_text_matching expression="hspace=0.25"/> 1822 <has_text_matching expression="hspace=0.25"/>
1806 <has_text_matching expression="lw=0.0"/> 1823
1807 <has_text_matching expression="ec='face'"/> 1824 </assert_contents>
1808 </assert_contents> 1825 </output>
1809 </output> 1826 <output name="out_png" file="pl.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png" ftype="png" compare="image_diff"/>
1810 <output name="out_png" file="pl.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png" ftype="png" compare="sim_size"/> 1827 </test>
1811 </test> 1828
1812 <test expect_num_outputs="2"> 1829 <!-- test 25 -->
1813 <!-- test 22: pl.draw_graph --> 1830 <test expect_num_outputs="2">
1814 <param name="adata" value="tl.draw_graph.pp.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.h5ad" /> 1831 <param name="adata" value="tl.draw_graph.pp.neighbors_umap_euclidean.recipe_weinreb17.paul15_subsample.h5ad"/>
1815 <param name="format" value="png"/> 1832 <param name="format" value="png"/>
1816 <conditional name="method"> 1833 <conditional name="method">
1817 <param name="method" value="pl.draw_graph"/> 1834 <param name="method" value="pl.draw_graph"/>
1818 <param name="use_raw" value="false"/>
1819 <param name="layout" value="fr"/> 1835 <param name="layout" value="fr"/>
1820 <conditional name="edges"> 1836 <conditional name="edges">
1821 <param name="edges" value="True"/> 1837 <param name="edges" value="True"/>
1822 <param name="edges_width" value="0.1"/>
1823 <param name="edges_color" value="Crimson"/> 1838 <param name="edges_color" value="Crimson"/>
1824 </conditional> 1839 </conditional>
1825 <param name="arrows" value="false"/>
1826 <param name="sort_order" value="false"/> 1840 <param name="sort_order" value="false"/>
1827 <section name="plot"> 1841 <section name="plot">
1828 <param name="projection" value="2d"/>
1829 <param name="legend_loc" value="right margin"/>
1830 <param name="legend_fontweight" value="normal"/> 1842 <param name="legend_fontweight" value="normal"/>
1831 <param name="palette" value="viridis"/> 1843 </section>
1832 <param name="frameon" value="True"/> 1844 </conditional>
1833 <param name="ncols" value="4"/> 1845 <section name="advanced_common">
1834 <param name="wspace" value="0.1"/> 1846 <param name="show_log" value="true"/>
1835 <param name="hspace" value="0.25"/>
1836 </section>
1837 <section name="matplotlib_pyplot_scatter">
1838 <param name="linewidths" value="0"/>
1839 <param name="edgecolors" value="face"/>
1840 </section>
1841 </conditional>
1842 <section name="advanced_common">
1843 <param name="show_log" value="true" />
1844 </section> 1847 </section>
1845 <output name="hidden_output"> 1848 <output name="hidden_output">
1846 <assert_contents> 1849 <assert_contents>
1847 <has_text_matching expression="sc.pl.draw_graph"/> 1850 <has_text_matching expression="sc.pl.draw_graph"/>
1848 <has_text_matching expression="use_raw=False"/> 1851 <has_text_matching expression="use_raw=False"/>
1852 <has_text_matching expression="arrows=False"/> 1855 <has_text_matching expression="arrows=False"/>
1853 <has_text_matching expression="sort_order=False"/> 1856 <has_text_matching expression="sort_order=False"/>
1854 <has_text_matching expression="projection='2d'"/> 1857 <has_text_matching expression="projection='2d'"/>
1855 <has_text_matching expression="legend_loc='right margin'"/> 1858 <has_text_matching expression="legend_loc='right margin'"/>
1856 <has_text_matching expression="legend_fontweight='normal'"/> 1859 <has_text_matching expression="legend_fontweight='normal'"/>
1857 <has_text_matching expression="palette='viridis'"/>
1858 <has_text_matching expression="frameon=True"/> 1860 <has_text_matching expression="frameon=True"/>
1859 <has_text_matching expression="ncols=4"/> 1861 <has_text_matching expression="ncols=4"/>
1860 <has_text_matching expression="wspace=0.1"/> 1862 <has_text_matching expression="wspace=0.1"/>
1861 <has_text_matching expression="hspace=0.25"/> 1863 <has_text_matching expression="hspace=0.25"/>
1862 <has_text_matching expression="lw=0.0"/> 1864 </assert_contents>
1863 <has_text_matching expression="ec='face"/> 1865 </output>
1864 </assert_contents> 1866 <output name="out_png" file="pl.draw_graph.png" ftype="png" compare="image_diff"/>
1865 </output> 1867 </test>
1866 <output name="out_png" file="pl.draw_graph.png" ftype="png" compare="sim_size"/> 1868
1867 </test> 1869 <!-- test 26 -->
1868 <test expect_num_outputs="2"> 1870 <test expect_num_outputs="2">
1869 <!-- test 23: pl.embedding_density --> 1871 <param name="adata" value="tl.embedding_density.umap.pbmc68k_reduced.h5ad"/>
1870 <param name="adata" value="tl.embedding_density.umap.pbmc68k_reduced.h5ad" />
1871 <param name="format" value="png"/> 1872 <param name="format" value="png"/>
1872 <conditional name="method"> 1873 <conditional name="method">
1873 <param name="method" value="pl.embedding_density"/> 1874 <param name="method" value="pl.embedding_density"/>
1874 <param name="basis" value="umap"/>
1875 <param name="key" value="umap_density_bulk_labels"/> 1875 <param name="key" value="umap_density_bulk_labels"/>
1876 </conditional> 1876 </conditional>
1877 <section name="advanced_common"> 1877 <section name="advanced_common">
1878 <param name="show_log" value="true" /> 1878 <param name="show_log" value="true"/>
1879 </section> 1879 </section>
1880 <output name="hidden_output"> 1880 <output name="hidden_output">
1881 <assert_contents> 1881 <assert_contents>
1882 <has_text_matching expression="sc.pl.embedding_density"/> 1882 <has_text_matching expression="sc.pl.embedding_density"/>
1883 <has_text_matching expression="basis='umap'" /> 1883 <has_text_matching expression="basis='umap'"/>
1884 <has_text_matching expression="key='umap_density_bulk_labels'"/> 1884 <has_text_matching expression="key='umap_density_bulk_labels'"/>
1885 </assert_contents> 1885 </assert_contents>
1886 </output> 1886 </output>
1887 <output name="out_png" file="pl.embedding_density.pbmc68k_reduced.png" ftype="png" compare="sim_size"/> 1887 <output name="out_png" file="pl.embedding_density.pbmc68k_reduced.png" ftype="png" compare="image_diff"/>
1888 </test> 1888 </test>
1889 <test expect_num_outputs="2"> 1889
1890 <!-- test 24: pl.dpt_groups_pseudotime --> 1890 <!-- This function is commented out because it is not compatible with pandas version. If the issue is not resolved in the next update, this should be removed. -->
1891 <param name="adata" value="tl.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad" /> 1891 <!-- test 27 -->
1892 <!-- <test expect_num_outputs="2">
1893 <param name="adata" value="tl.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad"/>
1892 <param name="format" value="png"/> 1894 <param name="format" value="png"/>
1893 <conditional name="method"> 1895 <conditional name="method">
1894 <param name="method" value="pl.dpt_groups_pseudotime"/> 1896 <param name="method" value="pl.dpt_groups_pseudotime"/>
1895 <param name="color_map" value="viridis"/> 1897
1896 </conditional> 1898 </conditional>
1897 <section name="advanced_common"> 1899 <section name="advanced_common">
1898 <param name="show_log" value="true" /> 1900 <param name="show_log" value="true"/>
1899 </section> 1901 </section>
1900 <output name="hidden_output"> 1902 <output name="hidden_output">
1901 <assert_contents> 1903 <assert_contents>
1902 <has_text_matching expression="sc.pl.dpt_groups_pseudotime"/> 1904 <has_text_matching expression="sc.pl.dpt_groups_pseudotime"/>
1903 <has_text_matching expression="color_map='viridis'"/> 1905 <has_text_matching expression="color_map='viridis'"/>
1904 </assert_contents> 1906 </assert_contents>
1905 </output> 1907 </output>
1906 <output name="out_png" file="pl.dpt_groups_pseudotime.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png" ftype="png" compare="sim_size"/> 1908 <output name="out_png" file="pl.dpt_groups_pseudotime.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png" ftype="png" compare="image_diff"/>
1907 </test> 1909 </test> -->
1908 <test expect_num_outputs="2"> 1910
1909 <!-- test 25: pl.dpt_timeseries --> 1911 <!-- test 28 -->
1910 <param name="adata" value="tl.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad" /> 1912 <test expect_num_outputs="2">
1913 <param name="adata" value="tl.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.h5ad"/>
1911 <param name="format" value="png"/> 1914 <param name="format" value="png"/>
1912 <conditional name="method"> 1915 <conditional name="method">
1913 <param name="method" value="pl.dpt_timeseries"/> 1916 <param name="method" value="pl.dpt_timeseries"/>
1914 <conditional name="heatmap"> 1917 </conditional>
1915 <param name="as_heatmap" value="True"/> 1918 <section name="advanced_common">
1916 <param name="color_map" value="viridis"/> 1919 <param name="show_log" value="true"/>
1917 </conditional>
1918 </conditional>
1919 <section name="advanced_common">
1920 <param name="show_log" value="true" />
1921 </section> 1920 </section>
1922 <output name="hidden_output"> 1921 <output name="hidden_output">
1923 <assert_contents> 1922 <assert_contents>
1924 <has_text_matching expression="sc.pl.dpt_timeseries"/> 1923 <has_text_matching expression="sc.pl.dpt_timeseries"/>
1925 <has_text_matching expression="color_map='viridis'"/>
1926 <has_text_matching expression="as_heatmap=True"/> 1924 <has_text_matching expression="as_heatmap=True"/>
1927 </assert_contents> 1925 </assert_contents>
1928 </output> 1926 </output>
1929 <output name="out_png" file="pl.dpt_timeseries.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png" ftype="png" compare="sim_size"/> 1927 <output name="out_png" file="pl.dpt_timeseries.dpt.diffmap.neighbors_gauss_braycurtis.recipe_weinreb17.paul15_subsample.png" ftype="png" compare="image_diff"/>
1930 </test> 1928 </test>
1929
1930 <!-- test 29 -->
1931 <test expect_num_outputs="1"> 1931 <test expect_num_outputs="1">
1932 <!-- test 26: pl.paga --> 1932 <param name="adata" value="tl.paga.neighbors.paul15_gauss_braycurtis.h5ad"/>
1933 <param name="adata" value="tl.paga.neighbors.paul15_gauss_braycurtis.h5ad" />
1934 <param name="format" value="png"/> 1933 <param name="format" value="png"/>
1935 <conditional name="method"> 1934 <conditional name="method">
1936 <param name="method" value="pl.paga"/> 1935 <param name="method" value="pl.paga"/>
1937 <param name="threshold" value="0.01"/> 1936 <param name="threshold" value="0.01"/>
1938 <param name="color" value="louvain"/> 1937 <param name="color" value="louvain"/>
1939 <param name="layout" value="fr"/> 1938 <param name="layout" value="fr"/>
1940 <param name="random_state" value="0"/>
1941 <param name="solid_edges" value="connectivities"/>
1942 <param name="single_component" value="False"/>
1943 <param name="fontsize" value="1"/> 1939 <param name="fontsize" value="1"/>
1944 <param name="node_size_scale" value="1.0"/>
1945 <param name="node_size_power" value="0.5"/>
1946 <param name="edge_width_scale" value="5"/> 1940 <param name="edge_width_scale" value="5"/>
1947 <param name="arrowsize" value="30"/> 1941 </conditional>
1948 <param name="normalize_to_color" value="False"/> 1942 <output name="out_png" file="pl.paga.paul15_gauss_braycurtis.png" ftype="png" compare="image_diff"/>
1949 <param name="cmap" value="viridis"/> 1943 </test>
1950 <param name="frameon" value="True"/> 1944
1951 </conditional> 1945 <!-- test 30 -->
1952 <output name="out_png" file="pl.paga.paul15_gauss_braycurtis.png" ftype="png" compare="sim_size"/>
1953 </test>
1954 <test expect_num_outputs="1"> 1946 <test expect_num_outputs="1">
1955 <!-- test 27: pl.paga_compare --> 1947 <param name="adata" value="tl.paga.neighbors.paul15_gauss_braycurtis.h5ad"/>
1956 <param name="adata" value="tl.paga.neighbors.paul15_gauss_braycurtis.h5ad" />
1957 <param name="format" value="png"/> 1948 <param name="format" value="png"/>
1958 <conditional name="method"> 1949 <conditional name="method">
1959 <param name="method" value="pl.paga_compare"/> 1950 <param name="method" value="pl.paga_compare"/>
1960 <param name="threshold" value="0.01"/> 1951 <param name="threshold" value="0.01"/>
1961 <param name="color" value="louvain"/> 1952 <param name="color" value="louvain"/>
1962 <param name="layout" value="fr"/> 1953 <param name="layout" value="fr"/>
1963 <param name="random_state" value="0"/>
1964 <param name="solid_edges" value="connectivities"/>
1965 <param name="single_component" value="False"/>
1966 <param name="fontsize" value="1"/> 1954 <param name="fontsize" value="1"/>
1967 <param name="node_size_scale" value="1.0"/>
1968 <param name="node_size_power" value="0.5"/>
1969 <param name="edge_width_scale" value="5"/> 1955 <param name="edge_width_scale" value="5"/>
1970 <param name="arrowsize" value="30"/> 1956 </conditional>
1971 <param name="normalize_to_color" value="False"/> 1957 <output name="out_png" file="pl.paga_compare.paul15_gauss_braycurtis.png" ftype="png" compare="image_diff"/>
1972 <param name="cmap" value="viridis"/> 1958 </test>
1973 <param name="frameon" value="True"/> 1959
1974 </conditional> 1960 <!-- test 31 -->
1975 <output name="out_png" file="pl.paga_compare.paul15_gauss_braycurtis.png" ftype="png" compare="sim_size"/> 1961 <!-- <test expect_num_outputs="2">
1976 </test>
1977 <!--<test expect_num_outputs="2">
1978 test pl.paga_path 1962 test pl.paga_path
1979 </test>--> 1963 </test> -->
1980 <test expect_num_outputs="2"> 1964
1981 <!-- test 28: pl.rank_genes_groups --> 1965 <!-- test 32 -->
1982 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad" /> 1966 <test expect_num_outputs="2">
1967 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad"/>
1983 <param name="format" value="png"/> 1968 <param name="format" value="png"/>
1984 <conditional name="method"> 1969 <conditional name="method">
1985 <param name="method" value="pl.rank_genes_groups"/> 1970 <param name="method" value="pl.rank_genes_groups"/>
1986 <param name="gene_symbols" value="symbol"/> 1971 <param name="n_genes" value="10"/>
1987 <param name="n_genes" value="10"/> 1972 </conditional>
1988 <param name="fontsize" value="8"/> 1973 <section name="advanced_common">
1989 <param name="ncols" value="4"/> 1974 <param name="show_log" value="true"/>
1990 <param name="sharey" value="true"/>
1991 </conditional>
1992 <section name="advanced_common">
1993 <param name="show_log" value="true" />
1994 </section> 1975 </section>
1995 <output name="hidden_output"> 1976 <output name="hidden_output">
1996 <assert_contents> 1977 <assert_contents>
1997 <has_text_matching expression="sc.pl.rank_genes_groups"/> 1978 <has_text_matching expression="sc.pl.rank_genes_groups"/>
1998 <has_text_matching expression="n_genes=10"/> 1979 <has_text_matching expression="n_genes=10"/>
1999 <has_text_matching expression="fontsize=8"/> 1980 <has_text_matching expression="fontsize=8"/>
2000 <has_text_matching expression="ncols=4"/> 1981 <has_text_matching expression="ncols=4"/>
2001 <has_text_matching expression="sharey=True"/> 1982 </assert_contents>
2002 </assert_contents> 1983 </output>
2003 </output> 1984 <output name="out_png" file="pl.rank_genes_groups.rank_genes_groups.krumsiek11.png" ftype="png" compare="image_diff"/>
2004 <output name="out_png" file="pl.rank_genes_groups.rank_genes_groups.krumsiek11.png" ftype="png" compare="sim_size"/> 1985 </test>
2005 </test> 1986
2006 <test expect_num_outputs="2"> 1987 <!-- test 33 -->
2007 <!-- test 29: pl.rank_genes_groups_violin --> 1988 <test expect_num_outputs="2">
2008 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad" /> 1989 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad"/>
2009 <param name="format" value="png"/> 1990 <param name="format" value="png"/>
2010 <conditional name="method"> 1991 <conditional name="method">
2011 <param name="method" value="pl.rank_genes_groups_violin"/> 1992 <param name="method" value="pl.rank_genes_groups_violin"/>
2012 <conditional name="genes"> 1993 <conditional name="genes">
2013 <param name="select" value="n_genes"/> 1994 <param name="select" value="n_genes"/>
2014 <param name="n_genes" value="10"/> 1995 <param name="n_genes" value="10"/>
2015 </conditional> 1996 </conditional>
2016 <param name="use_raw" value="false"/> 1997 </conditional>
2017 <param name="split" value="true"/> 1998 <section name="advanced_common">
2018 <section name="violin_plot"> 1999 <param name="show_log" value="true"/>
2019 <conditional name="stripplot">
2020 <param name="stripplot" value="True"/>
2021 <param name="jitter" value="True"/>
2022 <param name="size" value="1"/>
2023 </conditional>
2024 <param name="scale" value="width"/>
2025 </section>
2026 </conditional>
2027 <section name="advanced_common">
2028 <param name="show_log" value="true" />
2029 </section> 2000 </section>
2030 <output name="hidden_output"> 2001 <output name="hidden_output">
2031 <assert_contents> 2002 <assert_contents>
2032 <has_text_matching expression="sc.pl.rank_genes_groups_violin"/> 2003 <has_text_matching expression="sc.pl.rank_genes_groups_violin"/>
2033 <has_text_matching expression="n_genes=10"/> 2004 <has_text_matching expression="n_genes=10"/>
2034 <has_text_matching expression="use_raw=False"/> 2005 <has_text_matching expression="use_raw=None"/>
2035 <has_text_matching expression="split=True"/> 2006 <has_text_matching expression="split=True"/>
2036 <has_text_matching expression="strip=True"/> 2007 <has_text_matching expression="strip=True"/>
2037 <has_text_matching expression="jitter=True"/> 2008 <has_text_matching expression="jitter=True"/>
2038 <has_text_matching expression="size=1"/> 2009 <has_text_matching expression="size=1"/>
2039 <has_text_matching expression="scale='width'"/> 2010 <has_text_matching expression="density_norm='width'"/>
2040 </assert_contents> 2011 </assert_contents>
2041 </output> 2012 </output>
2042 <output_collection name="collection_png"> 2013 <output_collection name="collection_png">
2043 <element name="cell_type_Ery" file="pl.rank_genes_groups_violin.Ery.png" ftype="png" compare="sim_size"/> 2014 <element name="cell_type_Ery" file="pl.rank_genes_groups_violin.Ery.png" ftype="png" compare="image_diff" eps="3.5"/>
2044 <element name="cell_type_Mk" file="pl.rank_genes_groups_violin.Mk.png" ftype="png" compare="sim_size"/> 2015 <element name="cell_type_Mk" file="pl.rank_genes_groups_violin.Mk.png" ftype="png" compare="image_diff" eps="3.5"/>
2045 <element name="cell_type_Mo" file="pl.rank_genes_groups_violin.Mo.png" ftype="png" compare="sim_size"/> 2016 <element name="cell_type_Mo" file="pl.rank_genes_groups_violin.Mo.png" ftype="png" compare="image_diff" eps="3.5"/>
2046 <element name="cell_type_Neu" file="pl.rank_genes_groups_violin.Neu.png" ftype="png" compare="sim_size"/> 2017 <element name="cell_type_Neu" file="pl.rank_genes_groups_violin.Neu.png" ftype="png" compare="image_diff" eps="3.5"/>
2047 <element name="cell_type_progenitor" file="pl.rank_genes_groups_violin.progenitor.png" ftype="png" compare="sim_size"/> 2018 <element name="cell_type_progenitor" file="pl.rank_genes_groups_violin.progenitor.png" ftype="png" compare="image_diff" eps="3.5"/>
2048 </output_collection> 2019 </output_collection>
2049 </test> 2020 </test>
2050 <test expect_num_outputs="2"> 2021
2051 <!-- test 30: pl.rank_genes_groups_dotplot --> 2022 <!-- test 34 -->
2052 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad" /> 2023 <test expect_num_outputs="2">
2053 <param name="format" value="png"/> 2024 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad"/>
2054 <conditional name="method"> 2025 <param name="format" value="png"/>
2055 <param name="method" value="pl.rank_genes_groups_dotplot"/> 2026 <conditional name="method">
2056 <param name="gene_symbols" value="symbol"/> 2027 <param name="method" value="pl.rank_genes_groups_stacked_violin"/>
2057 <param name="n_genes" value="10"/> 2028 <param name="n_genes" value="10"/>
2058 <conditional name="var_names">
2059 <param name="type" value="all"/>
2060 </conditional>
2061 <param name="log" value="False"/>
2062 <param name="use_raw" value="False"/>
2063 <param name="dendrogram" value="False"/>
2064 <param name="color_map" value="viridis"/>
2065 <section name="matplotlib_pyplot_scatter">
2066 <param name="linewidths" value="0" />
2067 <param name="edgecolors" value="face"/>
2068 </section>
2069 </conditional>
2070 <section name="advanced_common">
2071 <param name="show_log" value="true" />
2072 </section>
2073 <output name="hidden_output">
2074 <assert_contents>
2075 <has_text_matching expression="sc.pl.rank_genes_groups_dotplot"/>
2076 <has_text_matching expression="n_genes=10"/>
2077 <has_text_matching expression="log=False"/>
2078 <has_text_matching expression="use_raw=False"/>
2079 <has_text_matching expression="dendrogram=False"/>
2080 <has_text_matching expression="color_map='viridis'"/>
2081 <has_text_matching expression="lw=0.0"/>
2082 <has_text_matching expression="ec='face'"/>
2083 </assert_contents>
2084 </output>
2085 <output name="out_png" file="pl.rank_genes_groups_dotplot.rank_genes_groups.krumsiek11.png" ftype="png" compare="sim_size"/>
2086 </test>
2087 <test expect_num_outputs="2">
2088 <!-- test 31: pl.rank_genes_groups_heatmap -->
2089 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad" />
2090 <param name="format" value="png"/>
2091 <conditional name="method">
2092 <param name="method" value="pl.rank_genes_groups_heatmap"/>
2093 <param name="gene_symbols" value="symbol"/>
2094 <param name="n_genes" value="10"/>
2095 <param name="log" value="False"/>
2096 <param name="use_raw" value="False"/>
2097 <param name="dendrogram" value="False"/>
2098 <param name="swap_axes" value="False"/>
2099 <param name="show_gene_labels" value="False"/>
2100 <section name="matplotlib_pyplot_imshow">
2101 <param name="cmap" value="viridis"/>
2102 <param name="interpolation" value="None"/>
2103 <param name="origin" value="upper"/>
2104 </section>
2105 </conditional>
2106 <section name="advanced_common">
2107 <param name="show_log" value="true" />
2108 </section>
2109 <output name="hidden_output">
2110 <assert_contents>
2111 <has_text_matching expression="sc.pl.rank_genes_groups_heatmap"/>
2112 <has_text_matching expression="n_genes=10"/>
2113 <has_text_matching expression="log=False"/>
2114 <has_text_matching expression="use_raw=False"/>
2115 <has_text_matching expression="dendrogram=False"/>
2116 <has_text_matching expression="swap_axes=False"/>
2117 <has_text_matching expression="show_gene_labels=False"/>
2118 <has_text_matching expression="cmap='viridis'"/>
2119 <has_text_matching expression="origin='upper'"/>
2120 </assert_contents>
2121 </output>
2122 <output name="out_png" file="pl.rank_genes_groups_heatmap.rank_genes_groups.krumsiek11.png" ftype="png" compare="sim_size"/>
2123 </test>
2124 <test expect_num_outputs="2">
2125 <!-- test 32: pl.rank_genes_groups_matrixplot -->
2126 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad" />
2127 <param name="format" value="png"/>
2128 <conditional name="method">
2129 <param name="method" value="pl.rank_genes_groups_matrixplot"/>
2130 <param name="gene_symbols" value="symbol"/>
2131 <param name="n_genes" value="10"/>
2132 <param name="log" value="False"/>
2133 <param name="use_raw" value="False"/>
2134 <param name="dendrogram" value="False"/>
2135 <param name="swap_axes" value="False"/>
2136 <section name="matplotlib_pyplot_pcolor">
2137 <param name="cmap" value="viridis"/>
2138 <param name="edgecolors" value="face"/>
2139 <param name="snap" value="False"/>
2140 </section>
2141 </conditional>
2142 <section name="advanced_common">
2143 <param name="show_log" value="true" />
2144 </section>
2145 <output name="hidden_output">
2146 <assert_contents>
2147 <has_text_matching expression="sc.pl.rank_genes_groups_matrixplot"/>
2148 <has_text_matching expression="n_genes=10"/>
2149 <has_text_matching expression="log=False"/>
2150 <has_text_matching expression="use_raw=False"/>
2151 <has_text_matching expression="dendrogram=False"/>
2152 <has_text_matching expression="swap_axes=False"/>
2153 <has_text_matching expression="cmap='viridis'"/>
2154 <has_text_matching expression="ec='face'"/>
2155 <has_text_matching expression="snap=False"/>
2156 </assert_contents>
2157 </output>
2158 <output name="out_png" file="pl.rank_genes_groups_matrixplot.rank_genes_groups.krumsiek11.png" ftype="png" compare="sim_size"/>
2159 </test>
2160 <test expect_num_outputs="2">
2161 <!-- test 33: pl.rank_genes_groups_stacked_violin -->
2162 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad" />
2163 <param name="format" value="png"/>
2164 <conditional name="method">
2165 <param name="method" value="pl.rank_genes_groups_stacked_violin"/>
2166 <param name="gene_symbols" value="symbol"/>
2167 <param name="n_genes" value="10"/>
2168 <param name="log" value="False"/>
2169 <param name="use_raw" value="False"/>
2170 <param name="dendrogram" value="True"/> 2029 <param name="dendrogram" value="True"/>
2171 <param name="swap_axes" value="True"/> 2030 <param name="swap_axes" value="True"/>
2172 <section name="violin_plot"> 2031 <section name="violin_plot">
2173 <conditional name="stripplot"> 2032 <conditional name="stripplot">
2174 <param name="stripplot" value="True"/>
2175 <param name="jitter" value="True"/>
2176 <param name="size" value="1"/> 2033 <param name="size" value="1"/>
2177 </conditional> 2034 </conditional>
2178 <param name="scale" value="width"/> 2035 <param name="density_norm" value="width"/>
2179 </section> 2036 </section>
2180 <param name="row_palette" value="muted"/> 2037 </conditional>
2181 <param name="standard_scale" value="None"/> 2038 <section name="advanced_common">
2182 <section name="seaborn_violinplot"> 2039 <param name="show_log" value="true"/>
2183 <param name="bw" value="scott"/>
2184 <param name="linewidth" value="0"/>
2185 <param name="color" value="AliceBlue"/>
2186 <param name="palette" value="viridis"/>
2187 <param name="saturation" value="0.75"/>
2188 </section>
2189 </conditional>
2190 <section name="advanced_common">
2191 <param name="show_log" value="true" />
2192 </section> 2040 </section>
2193 <output name="hidden_output"> 2041 <output name="hidden_output">
2194 <assert_contents> 2042 <assert_contents>
2195 <has_text_matching expression="sc.pl.rank_genes_groups_stacked_violin"/> 2043 <has_text_matching expression="sc.pl.rank_genes_groups_stacked_violin"/>
2196 <has_text_matching expression="n_genes=10"/> 2044 <has_text_matching expression="n_genes=10"/>
2197 <has_text_matching expression="log=False"/> 2045 <has_text_matching expression="log=False"/>
2198 <has_text_matching expression="use_raw=False"/> 2046 <has_text_matching expression="use_raw=None"/>
2199 <has_text_matching expression="dendrogram=True"/> 2047 <has_text_matching expression="dendrogram=True"/>
2200 <has_text_matching expression="swap_axes=True"/> 2048 <has_text_matching expression="swap_axes=True"/>
2201 <has_text_matching expression="stripplot=True"/> 2049 <has_text_matching expression="stripplot=True"/>
2202 <has_text_matching expression="jitter=True"/> 2050 <has_text_matching expression="jitter=True"/>
2203 <has_text_matching expression="size=1"/> 2051 <has_text_matching expression="size=1"/>
2204 <has_text_matching expression="scale='width'"/> 2052 <has_text_matching expression="density_norm='width'"/>
2205 <has_text_matching expression="bw='scott'"/> 2053 <has_text_matching expression="bw_method='scott'"/>
2206 <has_text_matching expression="scale='width'"/>
2207 <has_text_matching expression="linewidth=0.0"/>
2208 <has_text_matching expression="color='AliceBlue'"/>
2209 <has_text_matching expression="saturation=0.75"/> 2054 <has_text_matching expression="saturation=0.75"/>
2210 </assert_contents> 2055 </assert_contents>
2211 </output> 2056 </output>
2212 <output name="out_png" file="pl.rank_genes_groups_stacked_violin.rank_genes_groups.krumsiek11.png" ftype="png" compare="sim_size"/> 2057 <output name="out_png" file="pl.rank_genes_groups_stacked_violin.rank_genes_groups.krumsiek11.png" ftype="png" compare="image_diff" eps="1.5"/>
2213 </test> 2058 </test>
2214 <test expect_num_outputs="2"> 2059
2215 <!-- test 34: pl.scatter log !--> 2060 <!-- test 35 -->
2216 <param name="adata" value="pbmc68k_reduced.h5ad" /> 2061 <test expect_num_outputs="2">
2217 <param name="format" value="png"/> 2062 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad"/>
2218 <conditional name="method"> 2063 <param name="format" value="png"/>
2219 <param name="method" value="pl.scatter"/> 2064 <conditional name="method">
2220 <conditional name="type"> 2065 <param name="method" value="pl.rank_genes_groups_heatmap"/>
2221 <param name="type" value="xy"/> 2066 <param name="n_genes" value="10"/>
2222 <param name="x" value="n_genes"/> 2067 </conditional>
2223 <param name="y" value="n_counts"/> 2068 <section name="advanced_common">
2224 <param name="log" value="True"/> 2069 <param name="show_log" value="true"/>
2225 <conditional name="layers"> 2070 </section>
2226 <param name="use_layers" value="false"/> 2071 <output name="hidden_output">
2227 </conditional> 2072 <assert_contents>
2228 </conditional> 2073 <has_text_matching expression="sc.pl.rank_genes_groups_heatmap"/>
2229 <param name="use_raw" value="False"/> 2074 <has_text_matching expression="n_genes=10"/>
2230 <param name="sort_order" value="True"/> 2075 <has_text_matching expression="log=False"/>
2231 <section name="plot"> 2076 <has_text_matching expression="use_raw=None"/>
2232 <param name="projection" value="2d"/> 2077 <has_text_matching expression="dendrogram=False"/>
2233 <param name="legend_loc" value="right margin"/> 2078 <has_text_matching expression="swap_axes=False"/>
2234 <param name="legend_fontsize" value="1"/> 2079 <has_text_matching expression="show_gene_labels=False"/>
2235 <param name="legend_fontweight" value="normal"/> 2080 <has_text_matching expression="origin='upper'"/>
2236 <param name="palette" value="bwr"/> 2081 </assert_contents>
2237 <param name="frameon" value="False"/> 2082 </output>
2238 <param name="size" value="1"/> 2083 <output name="out_png" file="pl.rank_genes_groups_heatmap.rank_genes_groups.krumsiek11.png" ftype="png" compare="image_diff"/>
2239 <param name="title" value="A title"/> 2084 </test>
2240 </section> 2085
2241 </conditional> 2086 <!-- test 36 -->
2242 <section name="advanced_common"> 2087 <test expect_num_outputs="2">
2243 <param name="show_log" value="true" /> 2088 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad"/>
2244 </section> 2089 <param name="format" value="png"/>
2245 <output name="hidden_output"> 2090 <conditional name="method">
2246 <assert_contents> 2091 <param name="method" value="pl.rank_genes_groups_dotplot"/>
2247 <has_text_matching expression="sc.pl.scatter"/> 2092 <param name="n_genes" value="10"/>
2248 <has_text_matching expression="use_raw=False"/> 2093 </conditional>
2249 <has_text_matching expression="sort_order=True"/> 2094 <section name="advanced_common">
2250 <has_text_matching expression="projection='2d'"/> 2095 <param name="show_log" value="true"/>
2251 <has_text_matching expression="legend_loc='right margin'"/> 2096 </section>
2252 <has_text_matching expression="legend_fontsize=1"/> 2097 <output name="hidden_output">
2253 <has_text_matching expression="legend_fontweight='normal'"/> 2098 <assert_contents>
2254 <has_text_matching expression="frameon=False"/> 2099 <has_text_matching expression="sc.pl.rank_genes_groups_dotplot"/>
2255 <has_text_matching expression="size=1.0"/> 2100 <has_text_matching expression="n_genes=10"/>
2256 <has_text_matching expression="title='A title'"/> 2101 <has_text_matching expression="log=False"/>
2257 </assert_contents> 2102 <has_text_matching expression="use_raw=None"/>
2258 </output> 2103 <has_text_matching expression="dendrogram=False"/>
2259 <output name="out_png" file="pl.scatter.pbmc68k_reduced.png" ftype="png" compare="sim_size"/> 2104 </assert_contents>
2260 </test> 2105 </output>
2261 <test expect_num_outputs="2"> 2106 <output name="out_png" file="pl.rank_genes_groups_dotplot.rank_genes_groups.krumsiek11.png" ftype="png" compare="image_diff"/>
2262 <!-- test 35: pl.rank_genes_groups_dotplot with marker list --> 2107 </test>
2108
2109 <!-- test 37 -->
2110 <test expect_num_outputs="2">
2111 <param name="adata" value="tl.rank_genes_groups.krumsiek11.h5ad"/>
2112 <param name="format" value="png"/>
2113 <conditional name="method">
2114 <param name="method" value="pl.rank_genes_groups_matrixplot"/>
2115 <param name="n_genes" value="10"/>
2116 </conditional>
2117 <section name="advanced_common">
2118 <param name="show_log" value="true"/>
2119 </section>
2120 <output name="hidden_output">
2121 <assert_contents>
2122 <has_text_matching expression="sc.pl.rank_genes_groups_matrixplot"/>
2123 <has_text_matching expression="n_genes=10"/>
2124 <has_text_matching expression="log=False"/>
2125 <has_text_matching expression="use_raw=None"/>
2126 <has_text_matching expression="dendrogram=False"/>
2127 <has_text_matching expression="swap_axes=False"/>
2128 <has_text_matching expression="snap=False"/>
2129 </assert_contents>
2130 </output>
2131 <output name="out_png" file="pl.rank_genes_groups_matrixplot.rank_genes_groups.krumsiek11.png" ftype="png" compare="image_diff"/>
2132 </test>
2133
2134 <!-- test 38 pl.rank_genes_groups_dotplot with marker list-->
2135 <test expect_num_outputs="2">
2263 <param name="adata" value="cosg.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_1.h5ad" /> 2136 <param name="adata" value="cosg.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_1.h5ad" />
2264 <param name="format" value="png"/> 2137 <param name="format" value="png"/>
2265 <conditional name="method"> 2138 <conditional name="method">
2266 <param name="method" value="pl.rank_genes_groups_dotplot"/> 2139 <param name="method" value="pl.rank_genes_groups_dotplot"/>
2267 <conditional name="var_names"> 2140 <conditional name="var_names">
2268 <param name="type" value="customfile"/> 2141 <param name="type" value="customfile"/>
2269 <param name="var_names" value="tl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_1.tsv"/> 2142 <param name="var_names" value="tl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_1.tsv"/>
2270 </conditional> 2143 </conditional>
2271 <param name="groupby" value="bulk_labels"/>
2272 <param name="log" value="False"/>
2273 <param name="use_raw" value="False"/>
2274 <param name="dendrogram" value="False"/>
2275 <param name="color_map" value="viridis"/>
2276 <section name="matplotlib_pyplot_scatter">
2277 <param name="linewidths" value="0" />
2278 <param name="edgecolors" value="face"/>
2279 </section>
2280 </conditional> 2144 </conditional>
2281 <section name="advanced_common"> 2145 <section name="advanced_common">
2282 <param name="show_log" value="true" /> 2146 <param name="show_log" value="true" />
2283 </section> 2147 </section>
2284 <output name="hidden_output"> 2148 <output name="hidden_output">
2285 <assert_contents> 2149 <assert_contents>
2286 <has_text_matching expression="sc.pl.rank_genes_groups_dotplot"/> 2150 <has_text_matching expression="sc.pl.rank_genes_groups_dotplot"/>
2287 <has_text_matching expression="groupby='bulk_labels'"/>
2288 <has_text_matching expression="log=False"/> 2151 <has_text_matching expression="log=False"/>
2289 <has_text_matching expression="use_raw=False"/> 2152 <has_text_matching expression="use_raw=None"/>
2290 <has_text_matching expression="dendrogram=False"/> 2153 <has_text_matching expression="dendrogram=False"/>
2291 <has_text_matching expression="color_map='viridis'"/> 2154 </assert_contents>
2292 <has_text_matching expression="lw=0.0"/> 2155 </output>
2293 <has_text_matching expression="ec='face'"/> 2156 <output name="out_png" file="pl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_1.png" ftype="png" compare="image_diff"/>
2294 </assert_contents> 2157 </test>
2295 </output> 2158
2296 <output name="out_png" file="pl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_1.png" ftype="png" compare="sim_size"/> 2159 <!-- test 39: pl.rank_genes_groups_dotplot with marker list -->
2297 </test> 2160 <test expect_num_outputs="2">
2298 <test expect_num_outputs="2">
2299 <!-- test 36: pl.rank_genes_groups_dotplot with marker list -->
2300 <param name="adata" value="cosg.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_1.h5ad" /> 2161 <param name="adata" value="cosg.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_1.h5ad" />
2301 <param name="format" value="png"/> 2162 <param name="format" value="png"/>
2302 <conditional name="method"> 2163 <conditional name="method">
2303 <param name="method" value="pl.rank_genes_groups_dotplot"/> 2164 <param name="method" value="pl.rank_genes_groups_dotplot"/>
2304 <conditional name="var_names"> 2165 <conditional name="var_names">
2305 <param name="type" value="customfile"/> 2166 <param name="type" value="customfile"/>
2306 <param name="var_names" value="tl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.tsv"/> 2167 <param name="var_names" value="tl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.tsv"/>
2307 </conditional> 2168 </conditional>
2308 <param name="groupby" value="bulk_labels"/>
2309 <param name="log" value="False"/>
2310 <param name="use_raw" value="False"/>
2311 <param name="dendrogram" value="False"/>
2312 <param name="color_map" value="viridis"/>
2313 <section name="matplotlib_pyplot_scatter">
2314 <param name="linewidths" value="0" />
2315 <param name="edgecolors" value="face"/>
2316 </section>
2317 </conditional> 2169 </conditional>
2318 <section name="advanced_common"> 2170 <section name="advanced_common">
2319 <param name="show_log" value="true" /> 2171 <param name="show_log" value="true" />
2320 </section> 2172 </section>
2321 <output name="hidden_output"> 2173 <output name="hidden_output">
2322 <assert_contents> 2174 <assert_contents>
2323 <has_text_matching expression="sc.pl.rank_genes_groups_dotplot"/> 2175 <has_text_matching expression="sc.pl.rank_genes_groups_dotplot"/>
2324 <has_text_matching expression="groupby='bulk_labels'"/>
2325 <has_text_matching expression="log=False"/> 2176 <has_text_matching expression="log=False"/>
2326 <has_text_matching expression="use_raw=False"/> 2177 <has_text_matching expression="use_raw=None"/>
2327 <has_text_matching expression="dendrogram=False"/> 2178 <has_text_matching expression="dendrogram=False"/>
2328 <has_text_matching expression="color_map='viridis'"/> 2179 </assert_contents>
2329 <has_text_matching expression="lw=0.0"/> 2180 </output>
2330 <has_text_matching expression="ec='face'"/> 2181 <output name="out_png" file="pl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.png" ftype="png" compare="image_diff"/>
2331 </assert_contents> 2182 </test>
2332 </output> 2183
2333 <output name="out_png" file="pl.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.png" ftype="png" compare="sim_size"/> 2184 <!-- test 40 -->
2185 <test expect_num_outputs="2">
2186 <param name="adata" value="cosg.rank_genes_groups.newton-cg.pbmc68k_highly_reduced_1.h5ad" />
2187 <param name="format" value="png"/>
2188 <conditional name="method">
2189 <param name="method" value="pl.rank_genes_groups_tracksplot"/>
2190 </conditional>
2191 <section name="advanced_common">
2192 <param name="show_log" value="true" />
2193 </section>
2194 <output name="hidden_output">
2195 <assert_contents>
2196 <has_text_matching expression="sc.pl.rank_genes_groups_tracksplot"/>
2197 </assert_contents>
2198 </output>
2199 <output name="out_png" file="pl.rank_genes_groups_tracksplot.newton-cg.pbmc68k_highly_reduced_marker_filtered_1.png" ftype="png" compare="image_diff"/>
2334 </test> 2200 </test>
2335 </tests> 2201 </tests>
2336 <help><![CDATA[ 2202 <help><![CDATA[
2337 Generic: Scatter plot along observations or variables axes (`pl.scatter`) 2203 Generic: Scatter plot along observations or variables axes (`pl.scatter`)
2338 ========================================================================= 2204 =========================================================================
2370 expressing the gene can be visualized for each cluster. 2236 expressing the gene can be visualized for each cluster.
2371 2237
2372 More details on the `scanpy documentation 2238 More details on the `scanpy documentation
2373 <https://scanpy.readthedocs.io/en/stable/api/scanpy.pl.dotplot.html>`__ 2239 <https://scanpy.readthedocs.io/en/stable/api/scanpy.pl.dotplot.html>`__
2374 2240
2241 Generic: Tracks plot (`pl.tracksplot`)
2242 ======================================
2243
2244 In this type of plot each var_name is plotted as a filled line plot where the y values correspond to the var_name values and x is each of the cells.
2245 Best results are obtained when using raw counts that are not log.
2246
2247 More details on the `scanpy documentation
2248 <https://scanpy.readthedocs.io/en/stable/generated/scanpy.pl.tracksplot.html>`__
2249
2375 Generic: Violin plot (`pl.violin`) 2250 Generic: Violin plot (`pl.violin`)
2376 ================================== 2251 ==================================
2377 2252
2378 Wraps `seaborn.violinplot` for `anndata.AnnData`. 2253 Wraps `seaborn.violinplot` for `anndata.AnnData`.
2379 2254
2436 It produces Supp. Fig. 5c of Zheng et al. (2017) and MeanVarPlot() of Seurat. 2311 It produces Supp. Fig. 5c of Zheng et al. (2017) and MeanVarPlot() of Seurat.
2437 2312
2438 More details on the `scanpy documentation 2313 More details on the `scanpy documentation
2439 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.highly_variable_genes.html>`__ 2314 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.highly_variable_genes.html>`__
2440 2315
2316 Preprocessing: Plot histogram of doublet scores for observed transcriptomes and simulated doublets (`pl.scrublet_score_distribution`)
2317 =====================================================================================================================================
2318
2319 The histogram for simulated doublets is useful for determining the correct doublet score threshold.
2320 Scrublet must have been run previously with the input object.
2321
2322 More details on the `scanpy documentation
2323 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.scrublet_score_distribution.html>`__
2324
2441 PCA: Scatter plot in PCA coordinates (`pl.pca`) 2325 PCA: Scatter plot in PCA coordinates (`pl.pca`)
2442 =============================================== 2326 ===============================================
2443 2327
2444 More details on the `scanpy documentation 2328 More details on the `scanpy documentation
2445 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.pca.html>`__ 2329 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.pca.html>`__
2481 ============================================================== 2365 ==============================================================
2482 2366
2483 More details on the `scanpy documentation 2367 More details on the `scanpy documentation
2484 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.diffmap.html>`__ 2368 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.diffmap.html>`__
2485 2369
2486 Branching trajectories and pseudotime, clustering: Plot groups and pseudotime (`pl.dpt_groups_pseudotime`) 2370 Embeddings: Scatter plot in graph-drawing basis (`pl.draw_graph`)
2487 =========================================================================================================== 2371 =================================================================
2488 2372
2489 More details on the `scanpy documentation 2373 More details on the `scanpy documentation
2490 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.dpt_groups_pseudotime.html>`__ 2374 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.draw_graph.html>`__
2375
2376 Embeddings: Plot the density of cells in an embedding (per condition) (`pl.embedding_density`)
2377 ==============================================================================================
2378
2379 More details on the `scanpy documentation
2380 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.embedding_density.html>`__
2381
2382 .. This function is commented out because it is not compatible with pandas version. If the issue is not resolved in the next update, this should be removed.
2383 .. Branching trajectories and pseudotime, clustering: Plot groups and pseudotime (`pl.dpt_groups_pseudotime`)
2384 .. ===========================================================================================================
2385
2386 .. More details on the `scanpy documentation
2387 .. <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.dpt_groups_pseudotime.html>`__
2491 2388
2492 Branching trajectories and pseudotime, clustering: Heatmap of pseudotime series (`pl.dpt_timeseries`) 2389 Branching trajectories and pseudotime, clustering: Heatmap of pseudotime series (`pl.dpt_timeseries`)
2493 ===================================================================================================== 2390 =====================================================================================================
2494 2391
2495 More details on the `scanpy documentation 2392 More details on the `scanpy documentation
2531 ================================================================================== 2428 ==================================================================================
2532 2429
2533 More details on the `scanpy documentation 2430 More details on the `scanpy documentation
2534 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.rank_genes_groups_violin.html>`__ 2431 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.rank_genes_groups_violin.html>`__
2535 2432
2433 Marker genes: Plot ranking of genes as stacked violin plot (`pl.rank_genes_groups_stacked_violin`)
2434 ==================================================================================================
2435
2436 More details on the `scanpy documentation
2437 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.rank_genes_groups_stacked_violin.html>`__
2438
2439 Marker genes: Plot ranking of genes as heatmap plot (`pl.rank_genes_groups_heatmap`)
2440 ====================================================================================
2441
2442 More details on the `scanpy documentation
2443 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.rank_genes_groups_heatmap.html>`__
2444
2536 Marker genes: Plot ranking of genes as dotplot plot (`pl.rank_genes_groups_dotplot`) 2445 Marker genes: Plot ranking of genes as dotplot plot (`pl.rank_genes_groups_dotplot`)
2537 ==================================================================================== 2446 ====================================================================================
2538 2447
2539 More details on the `scanpy documentation 2448 More details on the `scanpy documentation
2540 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.rank_genes_groups_dotplot.html>`__ 2449 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.rank_genes_groups_dotplot.html>`__
2541 2450
2542 Marker genes: Plot ranking of genes as heatmap plot (`pl.rank_genes_groups_heatmap`)
2543 ====================================================================================
2544
2545 More details on the `scanpy documentation
2546 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.rank_genes_groups_heatmap.html>`__
2547
2548 Marker genes: Plot ranking of genes as matrixplot plot (`pl.rank_genes_groups_matrixplot`) 2451 Marker genes: Plot ranking of genes as matrixplot plot (`pl.rank_genes_groups_matrixplot`)
2549 ========================================================================================== 2452 ==========================================================================================
2550 2453
2551 More details on the `scanpy documentation 2454 More details on the `scanpy documentation
2552 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.rank_genes_groups_matrixplot.html>`__ 2455 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.rank_genes_groups_matrixplot.html>`__
2553 2456
2554 Marker genes: Plot ranking of genes as stacked violin plot (`pl.rank_genes_groups_stacked_violin`) 2457 ]]>
2555 ================================================================================================== 2458 </help>
2556
2557 More details on the `scanpy documentation
2558 <https://scanpy.readthedocs.io/en/stable/api/generated/scanpy.pl.rank_genes_groups_stacked_violin.html>`__
2559 ]]></help>
2560 <expand macro="citations"/> 2459 <expand macro="citations"/>
2561 </tool> 2460 </tool>