This is a test version of Biostars. For the public version, visit https://www.biostars.org.
UMAP QC

this is the E10.5 UMAP

this is the E11.5 UMAP47-b4d0-40ea-8289-6ba24c40

Hi I actually an noob in Spatial transcriptomics lol, just started my journey in ST. I am so confusing on the UMAP on my whole-mouse embryonic slice UMAP annotation. I just feel it's strange, where should I improve and how to interpreted this?

Thank you

scrnaseq spatial transcriptomics umap

Please ask specific questions. "Strange" is not helpful. What I see is that the UMAP shows a reasonable separation between celltypes, meaning, same predicitions group by proximity, that is good in my book. Of course the UMAP looks not like the embryo because it loses the spatial information and only uses the expression values or derived metrics.

Thank you very much for your reply! I should I have a positive control while saying something is negative "strange", appreciate your correction :) example for UMAP dimensional reduction What I was taught that the dimensional reductions results basically should look like this, with all clusters separated well. However, my results looked sticky and undivided.

You can achieve greater separation by changing the set of features you want to use for dimentionality reduction, but as said above, the UMAP you posted looks absolutely fine as a first pass. That's just what biological data will look like. You can annotate your UMAP clusters back onto the spatial map and see if the cluster assignments make sense.

1 answer

Hi RL,

Your UMAP plots for the E10.5 and E11.5 embryonic slices look quite reasonable for spatial transcriptomics data. In developmental biology, cell states often form continua rather than discrete clusters, leading to that "sticky" appearance—it's biologically meaningful, not a flaw.

To improve separation, revisit your feature selection. Focus on highly variable genes (HVGs) or marker genes relevant to embryogenesis. In Seurat (v5+), try adjusting FindNeighbors parameters like k.param or UMAP's n.neighbors (e.g., 15-30) for better resolution. If using Scanpy, tweak n_pcs in PCA before UMAP.

Always annotate clusters using known markers (e.g., Sox2 for neural, Tbx5 for heart). Project these back onto your spatial map with SpatialDimPlot in Seurat to validate if assignments align with anatomy.

If clusters still overlap oddly, check data quality: filter low-quality spots, normalize properly (SCTransform or logCPM), and batch-correct if needed (Harmony). This should clarify interpretations.

For tutorials, see Seurat's spatial vignette or Vizgen's MERFISH guides—they're up-to-date.

Kevin

Log in to answer this question.