Skip to content

Commit 76ce7f2

Browse files
lazappircannood
andauthored
Add results to foundation models page (#376)
* update results * update task * update results * force rerender * make sure the resources get updated as well * don't filter resources by method * alternative approach * undo changes * update results * update results * update index qmd * update json * update results * update results * update results * Add resutls to foundation models page * Add foundation models data files * Fix foundation models task_info.json * Find commit_sha in foundation models task_info.json * Update label projection data * Update batch integration data * Touch label projection page to trigger rebuild * Fix typo in backticks * Update data files * Trigger preview page rebuild * Update foundation models data files * Fix missing values in foundation models data * Tidy results pages code * Add interpretation section to foundation models * Fix method counts on results pages Non-baseline controls moved back to methods section for foundation models * Fix error reasons for old results Assume exit code = 0 --------- Co-authored-by: Robrecht Cannoodt <rcannood@gmail.com>
1 parent 6fbde02 commit 76ce7f2

64 files changed

Lines changed: 39827 additions & 37004 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

results/_include/_authors.qmd

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
```{r authors}
2+
#| echo: false
3+
if (!is.null(task_info$authors) && length(task_info$authors) > 0) {
4+
lines <- map_chr(task_info$authors, function(author) {
5+
name <- author$name
6+
roles <- author$roles %>% paste(collapse = ", ")
7+
github <- author$info$github %||% NULL
8+
orcid <- author$info$orcid %||% NULL
9+
10+
links <- c()
11+
if (!is.null(github)) {
12+
links <- c(links, glue::glue("[{{{{< fa brands github >}}}}](https://github.com/{github})"))
13+
}
14+
if (!is.null(orcid)) {
15+
links <- c(links, glue::glue("[{{{{< fa brands orcid >}}}}](https://orcid.org/{orcid})"))
16+
}
17+
links_label <-
18+
if (length(links) > 0) {
19+
glue::glue("{paste(links, collapse = ', ')}")
20+
} else {
21+
""
22+
}
23+
strip_margin(glue::glue("
24+
|* {name} ({roles}) {links_label}
25+
|"
26+
))
27+
})
28+
knitr::asis_output(paste(lines, collapse = "\n"))
29+
}
30+
```
Lines changed: 71 additions & 58 deletions
Original file line numberDiff line numberDiff line change
@@ -1,63 +1,76 @@
11
```{r baseline_descriptions}
22
#| echo: false
3-
baselines <- method_info %>% filter(is_baseline)
4-
lines <- pmap_chr(baselines, function(method_name, method_summary, method_description, reference, code_url, implementation_url, ...) {
5-
rest <- list(...)
6-
image <- pluck(rest, "image", .default = NULL)
7-
documentation_url <- pluck(rest, "documentation_url", .default = NULL)
8-
code_version <- pluck(rest, "code_version", .default = NULL)
9-
references_doi <- pluck(rest, "references_doi", .default = NULL) |> na.omit()
10-
references_bibtex <- pluck(rest, "references_bibtex", .default = NULL) |> na.omit()
11-
12-
ref <-
13-
if ("paper_reference" %in% names(rest)) {
14-
split_cite_fun(rest$paper_reference)
15-
} else {
16-
bibs <- c()
17-
if (!is.null(references_doi) && length(references_doi) != 0) {
18-
bibs <- get_bibtex_from_doi(references_doi)
19-
}
20-
if (!is.null(references_bibtex) && length(references_bibtex) != 0) {
21-
bibs <- c(bibs, references_bibtex)
22-
}
23-
# Write new entries to library.bib
24-
write_library(bibs)
25-
# Get bibtex references
26-
if (!is.null(bibs)) {
27-
get_bibtex_entries(bibs)
3+
baselines <- method_info %>%
4+
filter(is_baseline)
5+
6+
lines <- pmap_chr(
7+
baselines,
8+
function(method_name, method_summary, method_description, reference, code_url, implementation_url, ...) {
9+
rest <- list(...)
10+
11+
implementation_url <- if (is.na(implementation_url)) NULL else implementation_url
12+
code_url <- if (is.na(code_url)) NULL else code_url
13+
14+
image <- pluck(rest, "image", .default = NULL) |> na.omit()
15+
documentation_url <- pluck(rest, "documentation_url", .default = NULL) |> na.omit()
16+
code_version <- pluck(rest, "code_version", .default = NULL) |> na.omit()
17+
references_doi <- pluck(rest, "references_doi", .default = NULL) |> na.omit()
18+
references_bibtex <- pluck(rest, "references_bibtex", .default = NULL) |> na.omit()
19+
20+
ref <-
21+
if ("paper_reference" %in% names(rest)) {
22+
split_cite_fun(rest$paper_reference)
2823
} else {
29-
""
24+
bibs <- c()
25+
if (!is.null(references_doi) && length(references_doi) != 0) {
26+
bibs <- get_bibtex_from_doi(references_doi)
27+
}
28+
if (!is.null(references_bibtex) && length(references_bibtex) != 0) {
29+
bibs <- c(bibs, references_bibtex)
30+
}
31+
# Write new entries to library.bib
32+
write_library(bibs)
33+
# Get bibtex references
34+
if (!is.null(bibs)) {
35+
get_bibtex_entries(bibs)
36+
} else {
37+
""
38+
}
3039
}
31-
}
32-
33-
if (ref != "") ref <- paste0(" ", ref)
34-
35-
summ <- (method_summary %|% "Missing 'method_summary'") %>% str_replace_all("\\n", " ") %>% str_replace_all("\\. *$", "")
36-
37-
method_meta <- tribble(
38-
~icon, ~value,
39-
"bi bi-book", if (!is.null(documentation_url)) paste0("[Documentation](", documentation_url, ")") else NULL,
40-
"bi bi-globe", if (!is.null(code_url)) paste0("[Repository](", code_url, ")") else NULL,
41-
"bi bi-file-earmark-code", if (!is.null(implementation_url)) paste0("[Source Code](", implementation_url, ")") else NULL,
42-
"bi bi-box-seam", if (!is.null(image)) paste0("[Container](", image, ")") else NULL,
43-
"bi bi-tag", if (!is.null(code_version) && !is.na(code_version)) code_version else NULL,
44-
) %>% filter(!sapply(value, is.null))
45-
46-
meta_list <- paste(
47-
paste0("<i class=\"", method_meta$icon, "\"></i> ", method_meta$value),
48-
collapse = " · "
49-
)
50-
51-
strip_margin(glue::glue("
52-
|### {method_name}
53-
|
54-
|{meta_list}
55-
|
56-
|{summ} {ref}
57-
|
58-
|{method_description %|% ''}
59-
|"
60-
))
61-
})
40+
41+
if (ref != "") ref <- paste0(" ", ref)
42+
43+
summ <- (method_summary %|% "Missing 'method_summary'") %>%
44+
str_replace_all("\\n", " ") %>%
45+
str_replace_all("\\. *$", "")
46+
47+
method_meta <- tribble(
48+
~icon, ~value,
49+
"bi bi-book", if (!is.null(documentation_url)) paste0("[Documentation](", documentation_url, ")") else NULL,
50+
"bi bi-globe", if (!is.null(code_url)) paste0("[Repository](", code_url, ")") else NULL,
51+
"bi bi-file-earmark-code", if (!is.null(implementation_url)) paste0("[Source Code](", implementation_url, ")") else NULL,
52+
"bi bi-box-seam", if (!is.null(image)) paste0("[Container](", image, ")") else NULL,
53+
"bi bi-tag", if (!is.null(code_version) && !is.na(code_version)) code_version else NULL,
54+
) %>%
55+
filter(!sapply(value, is.null))
56+
57+
meta_list <- paste(
58+
paste0("<i class=\"", method_meta$icon, "\"></i> ", method_meta$value),
59+
collapse = " · "
60+
)
61+
62+
strip_margin(glue::glue("
63+
|### {method_name}
64+
|
65+
|{meta_list}
66+
|
67+
|{summ} {ref}
68+
|
69+
|{method_description %|% ''}
70+
|"
71+
))
72+
}
73+
)
74+
6275
knitr::asis_output(paste(lines, collapse = "\n"))
63-
```
76+
```

results/_include/_dataset_descriptions.qmd

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ lines <- pmap_chr(dataset_info, function(dataset_id, dataset_name, dataset_summa
1919
}
2020
2121
if (ref != "") ref <- paste0(" ", ref)
22-
22+
2323
dataset_link <-
2424
if (!is.null(source_dataset_id) && dir.exists(paste0("../../datasets/", source_dataset_id))) {
2525
glue::glue("../../datasets/{source_dataset_id}")
@@ -49,14 +49,14 @@ lines <- pmap_chr(dataset_info, function(dataset_id, dataset_name, dataset_summa
4949
"bi bi-calendar", if(!is.null(date_created)) paste0(date_created) else NULL,
5050
"bi bi-file-earmark-text", file_size_str,
5151
) %>% filter(!sapply(value, is.null))
52-
52+
5353
meta_list <- paste(
5454
paste0("<i class=\"", dataset_meta$icon, "\"></i> ", dataset_meta$value),
5555
collapse = " · "
5656
)
57-
57+
5858
summ <- (dataset_summary %|% "Missing 'dataset_summary'") %>% str_replace_all("\\n", " ") %>% str_replace_all("\\. *$", "")
59-
59+
6060
strip_margin(glue::glue("
6161
|### {dataset_name}
6262
|
@@ -68,4 +68,4 @@ lines <- pmap_chr(dataset_info, function(dataset_id, dataset_name, dataset_summa
6868
|"))
6969
})
7070
knitr::asis_output(paste(lines, collapse = "\n"))
71-
```
71+
```

results/_include/_load_data.qmd

Lines changed: 8 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,9 +3,7 @@
33
```{r setup}
44
#| include: false
55
#| error: true
6-
76
library(tidyverse)
8-
library(funkyheatmap)
97
library(kableExtra)
108
119
# touch library.bib in data dir
@@ -28,7 +26,11 @@ method_info <- jsonlite::read_json(paste0(params$data_dir, "/method_info.json"),
2826
metric_info <- jsonlite::read_json(paste0(params$data_dir, "/metric_info.json"), simplifyVector = TRUE)
2927
dataset_info <- jsonlite::read_json(paste0(params$data_dir, "/dataset_info.json"), simplifyVector = TRUE)
3028
results <- jsonlite::read_json(paste0(params$data_dir, "/results.json"), simplifyVector = TRUE) %>% tibble()
31-
qc <- jsonlite::read_json(paste0(params$data_dir, "/quality_control.json"), simplifyVector = TRUE)
29+
qc <- if (file.exists(paste0(params$data_dir, "/quality_control.json"))) {
30+
jsonlite::read_json(paste0(params$data_dir, "/quality_control.json"), simplifyVector = TRUE)
31+
} else {
32+
NULL
33+
}
3234
3335
# add missing columns
3436
for (col in c("method_summary", "method_description")) {
@@ -46,7 +48,7 @@ dataset_info$dataset_name <- dataset_info$dataset_name %|% dataset_info$dataset_
4648
4749
split_cite_fun <- function(keys) {
4850
if (is.null(keys)) return("")
49-
51+
5052
keys <- keys[!is.na(keys)]
5153
if (length(keys) == 0) return("")
5254
@@ -57,7 +59,6 @@ split_cite_fun <- function(keys) {
5759
paste0("[@", paste(refs, collapse = "; @"), "]")
5860
}
5961
60-
6162
convert_to_bibtex <- function(refs) {
6263
6364
bibtexhandle <- curl::new_handle()
@@ -81,7 +82,6 @@ convert_to_bibtex <- function(refs) {
8182
return(unlist(bibs))
8283
}
8384
84-
8585
get_bibtex_from_doi <- function(dois) {
8686
if (is.null(dois)) return("")
8787
@@ -137,16 +137,12 @@ get_bibtex_entries <- function(bibs) {
137137
return(ref_string)
138138
}
139139
140-
141-
142-
143140
aggregate_scores <- function(scaled_score) {
144141
mean(pmin(1, pmax(0, scaled_score)) %|% 0)
145142
}
146143
147-
148144
strip_margin <- function(text, symbol = "\\|") {
149-
str_replace_all(text, paste0("(\n?)[ \t]*", symbol), "\\1")
145+
str_replace_all(text, paste0("(\n?)[ \t]*", symbol), "\\1")
150146
}
151147
152148
ojs_define(
@@ -158,7 +154,6 @@ ojs_define(
158154
)
159155
```
160156

161-
162157
```{r overall_ranking}
163158
#| echo: false
164159
results_long <-
@@ -186,4 +181,4 @@ overall_ranking <- results_long %>%
186181
results_long$method_id <- factor(results_long$method_id, levels = rev(overall_ranking$method_id))
187182
results$method_id <- factor(results$method_id, levels = rev(overall_ranking$method_id))
188183
method_info$method_id <- factor(method_info$method_id, levels = rev(overall_ranking$method_id))
189-
```
184+
```

0 commit comments

Comments
 (0)