diff --git a/umap/umap_.py b/umap/umap_.py index 6b1b794d..2c252101 100644 --- a/umap/umap_.py +++ b/umap/umap_.py @@ -1146,11 +1146,12 @@ def simplicial_set_embedding( if output_dens: aux_data["rad_orig"] = ro - embedding = ( - 10.0 - * (embedding - np.min(embedding, 0)) - / (np.max(embedding, 0) - np.min(embedding, 0)) - ).astype(np.float32, order="C") + if isinstance(init, str) or pin_mask is None: # Do not change given pinned points. + embedding = ( + 10.0 + * (embedding - np.min(embedding, 0)) + / (np.max(embedding, 0) - np.min(embedding, 0)) + ).astype(np.float32, order="C") if euclidean_output: if pin_mask is not None: