diff --git a/tools/interactive/interactivetool_cellxgene_1.1.1.xml b/tools/interactive/interactivetool_cellxgene_1.1.1.xml index 08edd9273b4d..c8c6c4cb72bc 100644 --- a/tools/interactive/interactivetool_cellxgene_1.1.1.xml +++ b/tools/interactive/interactivetool_cellxgene_1.1.1.xml @@ -15,20 +15,23 @@ /> @@ -44,21 +47,31 @@ def rn(df, field, suffix = '-duplicate-'): adata = ad.read_h5ad(sys.argv[1]) output = sys.argv[2] gene_symbol_field = sys.argv[3] -if gene_symbol_field not in adata.var.keys(): - sys.exit(f"Field {gene_symbol_field} set as var_name does not exist in the var object. AnnData object will be used as it was given") - -adata.var = rn(adata.var, gene_symbol_field, suffix = "_d") +make_unique = (sys.argv[4].lower() == "true") +layer = sys.argv[5] -adata.var["extra_gene_id"] = adata.var.index -adata.var = adata.var.set_index(f"{gene_symbol_field}_u") +if gene_symbol_field and make_unique: + if gene_symbol_field not in adata.var.keys(): + sys.exit(f"Field {gene_symbol_field} set as var_name does not exist in the var object. AnnData object will be used as it was given") + + adata.var = rn(adata.var, gene_symbol_field, suffix = "_d") + adata.var["extra_gene_id"] = adata.var.index + adata.var = adata.var.set_index(f"{gene_symbol_field}_u") +if layer: + if layer not in adata.layers.keys(): + sys.exit(f"Layer {layer} is not present in AnnData, only available layers are: {', '.join(adata.layers.keys())}") + else: + adata.X = adata.layers[layer] -adata.write_h5ad(output, compression="gzip") +adata.write_h5ad(output) ]]> - + + + @@ -80,9 +93,20 @@ Selecting the Var name ---------------------- It can happen that the main index for the var element of AnnData is not the gene symbol field, in which case search by genes will probably be by identifier. -You can choose a different field (which contains the gene symbols) so that +You can choose a different field and celxgene will use this. If in addition you choose "Make unique", the AnnData is modified (in a new copy) so that that field is made unique and -it is indexed by it. Then cellxgene will allow searches by genes in that field. +it is indexed by it. Making it unique entails though loading the object into memory, +modifying and writing it back, which can delay the execution of cellxgene. + +Then cellxgene will allow searches by genes in that field. + +Selecting the layer +------------------- + +It can happen that the AnnData object contains multiple layers, for example +one with the raw counts and another with the normalised counts. You can select +which layer to use as the matrix for cellxgene. By default cellxgene will use the X slot, but +that slot might not contain the matrix that you want to visualise. Outputs ------- diff --git a/tools/interactive/interactivetool_guacamole_desktop.xml b/tools/interactive/interactivetool_guacamole_desktop.xml index 665f4d33eb81..dacf1589b276 100644 --- a/tools/interactive/interactivetool_guacamole_desktop.xml +++ b/tools/interactive/interactivetool_guacamole_desktop.xml @@ -3,7 +3,7 @@ quay.io/bgruening/guacamole-desktop - + 8080 diff --git a/tools/interactive/interactivetool_jupyter_notebook_1.0.0.xml b/tools/interactive/interactivetool_jupyter_notebook_1.0.0.xml index c7e4c9bb8508..5b5e91e16144 100644 --- a/tools/interactive/interactivetool_jupyter_notebook_1.0.0.xml +++ b/tools/interactive/interactivetool_jupyter_notebook_1.0.0.xml @@ -1,9 +1,9 @@ - + quay.io/bgruening/docker-jupyter-notebook:2021-03-05 - + 8888 ipython/lab @@ -14,6 +14,7 @@ 8080 $__galaxy_url__ + jupytool @@ -80,6 +81,7 @@ except FileNotFoundError: export GALAXY_WORKING_DIR=`pwd` && mkdir -p ./jupyter/outputs/collection && mkdir -p ./jupyter/galaxy_inputs && + export PROXY_PREFIX=\${EP_PATH%/ipython*} && ## change into the directory where the notebooks are located cd ./jupyter/ && diff --git a/tools/interactive/interactivetool_mgnify_notebook.xml b/tools/interactive/interactivetool_mgnify_notebook.xml index ea26f7c25f3f..5b2f93e17cfe 100644 --- a/tools/interactive/interactivetool_mgnify_notebook.xml +++ b/tools/interactive/interactivetool_mgnify_notebook.xml @@ -1,6 +1,6 @@ - + - quay.io/microbiome-informatics/emg-notebooks.dev:v1.0.1 + quay.io/microbiome-informatics/emg-notebooks.dev:v1.2.2 diff --git a/tools/interactive/interactivetool_openrefine.xml b/tools/interactive/interactivetool_openrefine.xml index e7dde3d47eed..1c8d9d96fb89 100644 --- a/tools/interactive/interactivetool_openrefine.xml +++ b/tools/interactive/interactivetool_openrefine.xml @@ -4,7 +4,7 @@ ylebras/openrefine-docker - + 3333 @@ -17,7 +17,7 @@ &1) @@ -81,4 +81,3 @@ Example input file (TAB separated):: ]]> - diff --git a/tools/interactive/interactivetool_pangeo_notebook.xml b/tools/interactive/interactivetool_pangeo_notebook.xml index 831a224514fd..b3c521d1c8cb 100644 --- a/tools/interactive/interactivetool_pangeo_notebook.xml +++ b/tools/interactive/interactivetool_pangeo_notebook.xml @@ -1,6 +1,6 @@ - quay.io/nordicesmhub/docker-pangeo-notebook:2023.02.27 + quay.io/nordicesmhub/docker-pangeo-notebook:1c0f66b diff --git a/tools/interactive/interactivetool_rstudio.xml b/tools/interactive/interactivetool_rstudio.xml index df344e444232..ee987d7c2c2f 100644 --- a/tools/interactive/interactivetool_rstudio.xml +++ b/tools/interactive/interactivetool_rstudio.xml @@ -3,14 +3,13 @@ quay.io/galaxy/docker-rstudio-notebook:23.1 - + 8787 / ${__app__.security.encode_id($jupyter_notebook.history_id)} - ${__app__.config.galaxy_infrastructure_url} 8080 $__galaxy_url__ true