Closed dtm2451 closed 1 year ago
Similar to the universal linker PR that's also in review now, testing this branch requires some particular development environment system setup:
sc_seq_dataset
model and seeded it with Seurat's mini test dataset. (Similar to the universal linker PR, using dev<->dev client/API interactions would require extra hacking. But for vulcan testing, Cole built a dev-vulcan<-production-magma pathway which has dual bonuses of getting around "strict = False" connection issues andddd also allows us to test vulcan with real data directly. We'll set that up here!)
:r: archimedes-r:latest
in line 34 in order to be able to use the development archimedes-r interpreter.scViz
workflow's card and then the Create Figure
button.Commit
your choice and hit Run
.*Re-design of the primary input entry point for the workflow is something I plan to focus on during alpha testing of the workflow. The current basic string entry method should be sufficient for the small group of alpha testers we'll have, and I have a few specific ideas already, so I'd like to consider that particular UX piece to be out-of-scope for this PR and not bog down any discussion there? (We'll probably switch to starting the workflow with an automatically run magma query followed by population of a purpose-built UI for selecting among all the projects' available sc_seq_datasets in a more descriptive way!)
Primarily:
sc_seq_dataset
model:object
that's the central component of the model -- the dataset itself.metadata_*
andumap_name
attributes to power recommendations of metadata or dimensionality reductions within the object that the user can use for plotting. (Non-restrictive... any dimensionality reductions and metadata contained in the object can be used for plotting. These recommendations are simply a way to give a standardized pointer to the final umap, clustering resolution, cell annotations, etc. even though such pieces might have any name within the object.)Remaining ToDos:
make_dittoSeq_plot.r
. I designed the UX to give standard choices for dimensionality reduction and metadata to use in the plot setup ui, but the internally used names for these recommendations must still be parsed back to their original target values before dittoSeq can use them. Dimensionality reduction recommendation parse-back is complete. A scan for, and replacement of,plot_setup
values matching^_Recommended_
is still required for the metadata recommendation parse-back.make_dittoSeq_plot.r
so can finish implementingvar_order
andgroup_order
inputs.Additional changes to the larger UI System encoded here:
PlotOutput
output function into a wrapper that determines the input plot type and then passes along to proper of the below...PlotlyOutput
PngOutput
output path.nested_select_autocomplete
input so could carry this over to newnestedDropdownPiece
.nestedDropdownPiece
which wraps thenested_select_autocomplete
input.nestedDropdownFullPathPiece
which I'd planned to use for gene and metadata selections, but it turned out thenestedDropdownPiece
piece described above worked better.reductionSetupPiece
for selecting e.g. UMAP vs PCA and components 5&6 instead of 1&2.stepSize
control to thesliderPiece
.can_randomize
control to theReorderPiece
because dittoSeq plotters sometimes alloworder = "randomize"
.ReorderCustomOnlyPiece
to handle reordering of things that can't rely on an "increasing"/"decreasing"/ "randomize" options.BooleanInput
, false by default, andcheckboxPiece
.subsetDataFramePiece
to work from an abstracted view of the target data so that the same piece can work for subsetting single-cell data without needing to flatten the object / directly provide data for all genes.