Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
196 changes: 196 additions & 0 deletions figure1-ABE/data/ari.tsv
Original file line number Diff line number Diff line change
@@ -0,0 +1,196 @@
Method Data Technology ARI
0 BANKSY STARmap_plus STARmap+ 0.586546
1 BANKSY abc_atlas_wmb_thalamus MERFISH 0.42765
2 BANKSY cosmx_liver cosmx 0.19102915
3 BANKSY cosmx_lung cosmx 0.24296299999999998
4 BANKSY libd_dlpfc Visium 0.3923225
5 BANKSY merfish_devheart Merfish 0.5797235000000001
6 BANKSY osmfish_Ssp osmFISH 0.0328302
7 BANKSY slideseq2_olfactory_bulb Slideseq2 0.40108900000000003
8 BANKSY stereoseq_liver Stereo-seq 0.11386850000000001
9 BANKSY stereoseq_mouse_embryo Stereo-seq 0.351812
10 BANKSY visium_breast_cancer_SEDR Visium 0.446539
11 BANKSY visium_chicken_heart Visium 0.251147
12 BANKSY xenium-ffpe-bc-idc Xenium 0.0947465
13 BANKSY xenium-mouse-brain-SergioSalas Xenium 0.418823
14 BayesSpace libd_dlpfc Visium 0.47879499999999997
15 BayesSpace visium_breast_cancer_SEDR Visium 0.510135
16 BayesSpace visium_chicken_heart Visium 0.44309
17 CellCharter STARmap_plus STARmap+ 0.525049
18 CellCharter abc_atlas_wmb_thalamus MERFISH 0.41834
19 CellCharter cosmx_liver cosmx 0.22284700000000002
20 CellCharter cosmx_lung cosmx 0.21436899999999998
21 CellCharter libd_dlpfc Visium 0.43249
22 CellCharter merfish_devheart Merfish 0.5211060000000001
23 CellCharter osmfish_Ssp osmFISH 0.477721
24 CellCharter slideseq2_olfactory_bulb Slideseq2 0.322064
25 CellCharter stereoseq_liver Stereo-seq 0.1311165
26 CellCharter stereoseq_mouse_embryo Stereo-seq 0.343304
27 CellCharter visium_breast_cancer_SEDR Visium 0.507811
28 CellCharter visium_chicken_heart Visium 0.40035699999999996
29 CellCharter visium_hd_cancer_colon Visium HD 0.307882
30 CellCharter xenium-ffpe-bc-idc Xenium 0.17313650000000003
31 CellCharter xenium-mouse-brain-SergioSalas Xenium 0.437107
32 DR-SC STARmap_plus STARmap+ 0.298422
33 DR-SC abc_atlas_wmb_thalamus MERFISH 0.41131249999999997
34 DR-SC cosmx_lung cosmx 0.173799
35 DR-SC libd_dlpfc Visium 0.424577
36 DR-SC merfish_devheart Merfish 0.411312
37 DR-SC slideseq2_olfactory_bulb Slideseq2 0.294904
38 DR-SC stereoseq_liver Stereo-seq 0.2325575
39 DR-SC stereoseq_mouse_embryo Stereo-seq 0.375291
40 DR-SC visium_breast_cancer_SEDR Visium 0.509267
41 DR-SC visium_chicken_heart Visium 0.553949
42 DR-SC visium_hd_cancer_colon Visium HD 0.325487
43 DR-SC xenium-ffpe-bc-idc Xenium 0.1331735
44 DR-SC xenium-mouse-brain-SergioSalas Xenium 0.160782
45 Giotto STARmap_plus STARmap+ 0.0
46 Giotto abc_atlas_wmb_thalamus MERFISH 0.410396
47 Giotto libd_dlpfc Visium 0.0
48 Giotto merfish_devheart Merfish 0.0
49 Giotto stereoseq_liver Stereo-seq 0.15579700000000002
50 Giotto visium_breast_cancer_SEDR Visium 0.590932
51 Giotto visium_hd_cancer_colon Visium HD 0.0
52 GraphST libd_dlpfc Visium 0.514263
53 GraphST visium_breast_cancer_SEDR Visium 0.518954
54 GraphST visium_chicken_heart Visium 0.466684
55 SCAN-IT STARmap_plus STARmap+ 0.605667
56 SCAN-IT abc_atlas_wmb_thalamus MERFISH 0.40502950000000004
57 SCAN-IT cosmx_liver cosmx 0.291428
58 SCAN-IT cosmx_lung cosmx 0.22969499999999998
59 SCAN-IT libd_dlpfc Visium 0.42672350000000003
60 SCAN-IT osmfish_Ssp osmFISH 0.438015
61 SCAN-IT slideseq2_olfactory_bulb Slideseq2 0.354806
62 SCAN-IT stereoseq_liver Stereo-seq 0.0808062
63 SCAN-IT visium_breast_cancer_SEDR Visium 0.49805
64 SCAN-IT visium_chicken_heart Visium 0.27552350000000003
65 SCAN-IT visium_hd_cancer_colon Visium HD 0.449759
66 SCAN-IT xenium-mouse-brain-SergioSalas Xenium 0.405461
67 scMEB libd_dlpfc Visium 0.382042
68 scMEB visium_breast_cancer_SEDR Visium 0.468681
69 scMEB visium_chicken_heart Visium 0.516841
70 scMEB visium_hd_cancer_colon Visium HD 0.27199
71 SEDR STARmap_plus STARmap+ 0.4440275
72 SEDR abc_atlas_wmb_thalamus MERFISH 0.39850450000000004
73 SEDR cosmx_lung cosmx 0.193699
74 SEDR libd_dlpfc Visium 0.512438
75 SEDR merfish_devheart Merfish 0.3588485
76 SEDR slideseq2_olfactory_bulb Slideseq2 0.38655
77 SEDR stereoseq_liver Stereo-seq 0.254971
78 SEDR stereoseq_mouse_embryo Stereo-seq 0.25578049999999997
79 SEDR visium_breast_cancer_SEDR Visium 0.454791
80 SEDR visium_chicken_heart Visium 0.3947265
81 SEDR visium_hd_cancer_colon Visium HD 0.226319
82 SEDR xenium-mouse-brain-SergioSalas Xenium 0.324439
83 SOTIP libd_dlpfc Visium 0.402126
84 STAGATE STARmap_plus STARmap+ 0.411152
85 STAGATE abc_atlas_wmb_thalamus MERFISH 0.3947405
86 STAGATE cosmx_lung cosmx 0.2001695
87 STAGATE libd_dlpfc Visium 0.4241495
88 STAGATE merfish_devheart Merfish 0.464059
89 STAGATE osmfish_Ssp osmFISH 0.123865
90 STAGATE slideseq2_olfactory_bulb Slideseq2 0.2770725
91 STAGATE stereoseq_mouse_embryo Stereo-seq 0.0302528
92 STAGATE visium_breast_cancer_SEDR Visium 0.423711
93 STAGATE visium_chicken_heart Visium 0.5278995
94 STAGATE visium_hd_cancer_colon Visium HD 0.392316
95 STAGATE xenium-mouse-brain-SergioSalas Xenium 0.233947
96 SpaceFlow STARmap_plus STARmap+ 0.633237
97 SpaceFlow abc_atlas_wmb_thalamus MERFISH 0.44786400000000004
98 SpaceFlow cosmx_liver cosmx 0.150306
99 SpaceFlow cosmx_lung cosmx 0.23240149999999998
100 SpaceFlow libd_dlpfc Visium 0.3248765
101 SpaceFlow merfish_devheart Merfish 0.5135645
102 SpaceFlow osmfish_Ssp osmFISH 0.254667
103 SpaceFlow slideseq2_olfactory_bulb Slideseq2 0.40415100000000004
104 SpaceFlow stereoseq_liver Stereo-seq 0.19564900000000002
105 SpaceFlow stereoseq_mouse_embryo Stereo-seq 0.385838
106 SpaceFlow visium_breast_cancer_SEDR Visium 0.417785
107 SpaceFlow visium_chicken_heart Visium 0.3205285
108 SpaceFlow visium_hd_cancer_colon Visium HD 0.40079200000000004
109 SpaceFlow xenium-ffpe-bc-idc Xenium 0.12696455
110 SpaceFlow xenium-mouse-brain-SergioSalas Xenium 0.449782
111 SPICEMIX abc_atlas_wmb_thalamus MERFISH 0.260981
112 SPICEMIX cosmx_lung cosmx 0.0907142
113 SPICEMIX libd_dlpfc Visium 0.203352
114 SPICEMIX stereoseq_liver Stereo-seq 0.12959
115 SPICEMIX visium_breast_cancer_SEDR Visium 0.347565
116 SPICEMIX visium_chicken_heart Visium 0.371323
117 SPICEMIX visium_hd_cancer_colon Visium HD 0.103312
118 SPICEMIX xenium-mouse-brain-SergioSalas Xenium 0.01649585
119 BASS STARmap_plus STARmap+ 0.578344
120 BASS abc_atlas_wmb_thalamus MERFISH 0.41315
121 BASS cosmx_lung cosmx 0.175627
122 BASS libd_dlpfc Visium 0.5021355
123 BASS merfish_devheart Merfish 0.619177
124 BASS slideseq2_olfactory_bulb Slideseq2 0.398977
125 BASS visium_breast_cancer_SEDR Visium 0.613401
126 BASS visium_chicken_heart Visium 0.4872265
127 BASS visium_hd_cancer_colon Visium HD 0.37428649999999997
128 MAPLE abc_atlas_wmb_thalamus MERFISH 0.311754
129 MAPLE libd_dlpfc Visium 0.294613
130 MAPLE slideseq2_olfactory_bulb Slideseq2 0.609203
131 MAPLE visium_chicken_heart Visium 0.272994
132 MERINGUE libd_dlpfc Visium 0.212302
133 PRECAST STARmap_plus STARmap+ 0.273902
134 PRECAST abc_atlas_wmb_thalamus MERFISH 0.371727
135 PRECAST cosmx_lung cosmx 0.166193
136 PRECAST libd_dlpfc Visium 0.451211
137 PRECAST merfish_devheart Merfish 0.416367
138 PRECAST slideseq2_olfactory_bulb Slideseq2 0.400574
139 PRECAST stereoseq_liver Stereo-seq 0.223543
140 PRECAST stereoseq_mouse_embryo Stereo-seq 0.370056
141 PRECAST visium_breast_cancer_SEDR Visium 0.551167
142 PRECAST visium_chicken_heart Visium 0.5196745
143 PRECAST visium_hd_cancer_colon Visium HD 0.441785
144 PRECAST xenium-ffpe-bc-idc Xenium 0.1795685
145 PRECAST xenium-mouse-brain-SergioSalas Xenium 0.128127
146 scanpy STARmap_plus STARmap+ 0.31263
147 scanpy abc_atlas_wmb_thalamus MERFISH 0.4141655
148 scanpy cosmx_liver cosmx 0.14987309999999998
149 scanpy cosmx_lung cosmx 0.1879835
150 scanpy libd_dlpfc Visium 0.1985045
151 scanpy merfish_devheart Merfish 0.3160575
152 scanpy osmfish_Ssp osmFISH 0.334391
153 scanpy slideseq2_olfactory_bulb Slideseq2 0.4190805
154 scanpy stereoseq_liver Stereo-seq 0.1918725
155 scanpy stereoseq_mouse_embryo Stereo-seq 0.408946
156 scanpy visium_breast_cancer_SEDR Visium 0.436272
157 scanpy visium_chicken_heart Visium 0.4960635
158 scanpy visium_hd_cancer_colon Visium HD 0.4087815
159 scanpy xenium-ffpe-bc-idc Xenium 0.2200805
160 scanpy xenium-mouse-brain-SergioSalas Xenium 0.226889
161 Seurat STARmap_plus STARmap+ 0.272646
162 Seurat abc_atlas_wmb_thalamus MERFISH 0.362862
163 Seurat cosmx_liver cosmx 0.1091928
164 Seurat cosmx_lung cosmx 0.16661
165 Seurat libd_dlpfc Visium 0.34361149999999996
166 Seurat merfish_devheart Merfish 0.25801799999999997
167 Seurat osmfish_Ssp osmFISH 0.0756463
168 Seurat slideseq2_olfactory_bulb Slideseq2 0.4620475
169 Seurat stereoseq_liver Stereo-seq 0.217646
170 Seurat stereoseq_mouse_embryo Stereo-seq 0.417248
171 Seurat visium_breast_cancer_SEDR Visium 0.443662
172 Seurat visium_chicken_heart Visium 0.42068099999999997
173 Seurat visium_hd_cancer_colon Visium HD 0.3896465
174 Seurat xenium-ffpe-bc-idc Xenium 0.1811205
175 Seurat xenium-mouse-brain-SergioSalas Xenium 0.1310385
176 spaGCN STARmap_plus STARmap+ 0.296375
177 spaGCN abc_atlas_wmb_thalamus MERFISH 0.4227365
178 spaGCN cosmx_lung cosmx 0.144267
179 spaGCN libd_dlpfc Visium 0.4648555
180 spaGCN merfish_devheart Merfish 0.389649
181 spaGCN slideseq2_olfactory_bulb Slideseq2 0.40776900000000005
182 spaGCN stereoseq_liver Stereo-seq 0.226278
183 spaGCN stereoseq_mouse_embryo Stereo-seq 0.406477
184 spaGCN visium_breast_cancer_SEDR Visium 0.529002
185 spaGCN visium_chicken_heart Visium 0.4172525
186 spaGCN visium_hd_cancer_colon Visium HD 0.3822085
187 spaGCN xenium-mouse-brain-SergioSalas Xenium 0.163136
188 spatialGE libd_dlpfc Visium 0.21794449999999999
189 Stardust abc_atlas_wmb_thalamus MERFISH 0.315232
190 Stardust libd_dlpfc Visium 0.26698
191 Stardust osmfish_Ssp osmFISH 0.072588
192 Stardust stereoseq_liver Stereo-seq 0.1446755
193 Stardust visium_breast_cancer_SEDR Visium 0.442789
194 Stardust visium_chicken_heart Visium 0.25796549999999996
157 changes: 0 additions & 157 deletions figure1-ABE/figure1-ABE.ipynb → figure1-ABE/figure1-AB.ipynb
Original file line number Diff line number Diff line change
Expand Up @@ -1037,163 +1037,6 @@
"\n",
"ggsave(\"Figure1B.pdf\", figB, height = 8, width = 13, units = \"in\", dpi=600, device = \"pdf\") "
]
},
{
"cell_type": "markdown",
"id": "5adbc80c-f831-4053-b4ac-f5449f2dd962",
"metadata": {},
"source": [
"## Figure E"
]
},
{
"cell_type": "markdown",
"id": "b3631142-1d8c-4dca-a242-e30c08fdfe97",
"metadata": {},
"source": [
"### preprocessing"
]
},
{
"cell_type": "code",
"execution_count": 133,
"id": "4a5dd9ff-a1b8-4d1e-8bdd-c06293de6eea",
"metadata": {},
"outputs": [],
"source": [
"## Load SpaceHack results\n",
"resDT <- read.table(\"./data/SpaceHack_ARI_libd.tsv\", sep = \"\\t\", header = TRUE, stringsAsFactors = FALSE)\n",
"resDT <- resDT %>%\n",
" group_by(Method) %>%\n",
" mutate(ConfigColor = case_when(\n",
" Config == \"config_default\" ~ \"default\", # If Config is 'config_default', assign 'default'\n",
" TRUE ~ paste0(\"config\", dense_rank(factor(Config))) # For other configs, assign 'config1', 'config2', etc.\n",
" ))\n",
"## Only keep methods that have more than 1 configuration\n",
"data <- resDT %>%\n",
" group_by(Method) %>%\n",
" filter(n_distinct(Config) > 1) %>%\n",
" ungroup()\n",
"data$metric_value <- data$ARI\n",
"data$dataset <- data$ConfigColor\n",
"data$method <- data$Method\n",
"data <- data %>% \n",
" as.data.table() %>%\n",
" filter(!is.na(metric_value) & !(metric_value == 'NA'))\n",
"data$metric_value <- as.numeric(data$metric_value)\n",
"# Calculate the mean of 'metric_value' by 'Sample' and order the result by mean in descending order\n",
"dataset_mean <- data[,.(mean = mean(metric_value)), by = dataset][order(-mean),]\n",
"data_mean <- data[, .(mean = mean(metric_value)), by = method][order(-mean), ]\n",
"method_order <- c(1:nrow(data_mean)) %>% set_names(data_mean$method)\n",
"data_region <- data[, .(max = max(metric_value), min = min(metric_value)), by = .(method, dataset)\n",
" ][, x_pos := method_order[method]][]"
]
},
{
"cell_type": "code",
"execution_count": 134,
"id": "c6b4e8f6-94c1-4f7d-9607-60b6e268649f",
"metadata": {},
"outputs": [
{
"name": "stderr",
"output_type": "stream",
"text": [
"\u001b[1m\u001b[22m`summarise()` has grouped output by 'method'. You can override using the\n",
"`.groups` argument.\n",
"Warning message:\n",
"“\u001b[1m\u001b[22m`unnest()` has a new interface. See `?unnest` for details.\n",
"\u001b[36mℹ\u001b[39m Try `df %>% unnest(c(x, y))`, with `mutate()` if needed.”\n"
]
}
],
"source": [
"### settings for violin plots\n",
"bw <- 0.05\n",
"\n",
"wes_dic <- wes_palette[1:length(unique(data$ConfigColor))] %>% set_names(\n",
" c(\"default\", \"config1\", \"config2\", \"config3\", \"config4\", \"config5\")\n",
")\n",
"\n",
"densities <-\n",
" data %>%\n",
" group_by(method, dataset) %>%\n",
" summarise(density = list(density(metric_value, bw = bw, from = 0, to = 1, n = 100))) %>%\n",
" mutate(x = map(density, \"x\"), y = map(density, \"y\")) %>%\n",
" unnest(x, y) %>%\n",
" ungroup()\n",
"\n",
"densities_stacked <-\n",
" densities %>%\n",
" group_by(method, x) %>%\n",
" mutate(dataset = factor(dataset, dataset_mean$dataset)) %>% # set order of method performance\n",
" arrange(dataset) %>%\n",
" mutate(norm = sum(y), y = y * y, y = y / sum(y) * norm, y = ifelse(is.na(y), 0, y)) %>% # normalise between 0 and 1\n",
" mutate(ymax = cumsum(y), ymin = lag(ymax, default = 0)) %>%\n",
" ungroup() %>%\n",
" group_by(method) %>%\n",
" mutate(ymin = ymin / max(ymax), ymax = ymax / max(ymax)) %>% # normalise so that the maximal density is 1\n",
" ungroup()\n",
"\n",
"densities_violin <-\n",
" densities_stacked %>%\n",
" group_by(method, x) %>%\n",
" mutate(ymax_violin = ymax - max(ymax)/2, ymin_violin = ymin - max(ymax)/2) %>%\n",
" ungroup()\n",
"\n",
"densities_violin$method <- factor(densities_violin$method, levels = data_mean$method)\n",
"densities_violin$dataset <- factor(densities_violin$dataset, \n",
" levels = names(wes_dic))\n",
"data_mean$method <- factor(data_mean$method, levels = data_mean$method)"
]
},
{
"cell_type": "markdown",
"id": "741d4e7a-c091-4615-9805-385f94c80053",
"metadata": {},
"source": [
"### plot"
]
},
{
"cell_type": "code",
"execution_count": 135,
"id": "713f4a82-7b00-4d9f-8b9d-61db02080aef",
"metadata": {},
"outputs": [],
"source": [
"figE <-\n",
" ggplot(densities_violin) +\n",
" geom_ribbon(\n",
" aes(\n",
" x,\n",
" ymin = ymin_violin + as.numeric(method),\n",
" ymax = ymax_violin + as.numeric(method),\n",
" fill = dataset,\n",
" group = paste0(method, dataset),\n",
" ), position = \"identity\"\n",
" ) +\n",
" scale_fill_manual(values=wes_dic) +\n",
" geom_point(aes(y = method, x = mean), data = data_mean, size = 13, shape = 45, color = \"black\") +\n",
" scale_x_continuous(\"Adjusted Rand Index (ARI)\", limits = c(0, 1), expand = c(0, 0)) +\n",
" scale_y_discrete(\"\", breaks = factor(data_mean$method), labels = factor(data_mean$method)) + # Use scale_y_discrete() instead of scale_y_continuous()\n",
" coord_flip() +\n",
" labs(x = \"ARI\", y = \"\", title = \"ARI for methods with different configurations\", fill = \"Configuration\") +\n",
" theme_pub() +\n",
" theme(axis.text.x = element_text(angle = 45, hjust = 1), \n",
" plot.title = element_text(hjust = 0.5, size = 14, face = \"plain\"), # Centere\n",
" legend.position = \"right\", legend.justification = \"left\")\n",
"ggsave(\"./Figure1E.pdf\", width = 8, height = 5,\n",
" units = \"in\", dpi = 600, figE)\n"
]
},
{
"cell_type": "code",
"execution_count": null,
"id": "f319d967-df91-4ec5-a68a-ce2bb0cb1f04",
"metadata": {},
"outputs": [],
"source": []
}
],
"metadata": {
Expand Down
Loading