ubigen/R/ui.R

99 lines
2.6 KiB
R
Raw Normal View History

2022-05-07 17:54:23 +02:00
#' Function for creating the main user interface.
#' @noRd
ui <- function() {
2022-05-30 19:32:19 +02:00
navbarPage(
theme = bslib::bs_theme(
version = 5,
bootswatch = "united",
primary = "#7d19bf"
),
title = "Ubigen",
tabPanel(
"Explore",
sidebarLayout(
sidebarPanel(
width = 3,
h3("Features"),
2022-05-30 20:22:42 +02:00
selectInput(
"cross_sample_metric",
2022-05-30 19:32:19 +02:00
verticalLayout(
2022-05-30 20:22:42 +02:00
strong("Expression across samples"),
paste0(
"Proportion samples in which the gene is expressed above the ",
"selected threshold. Select a method and a weight for the ",
"final score."
)
2022-05-30 19:32:19 +02:00
),
2022-05-30 20:22:42 +02:00
list(
"Above 95th percentile" = "above_95",
"Above median" = "above_median",
"Above zero" = "above_zero"
)
2022-05-30 19:32:19 +02:00
),
sliderInput(
2022-05-30 20:22:42 +02:00
"cross_sample_weight",
label = NULL,
2022-05-30 19:32:19 +02:00
min = -1.0,
max = 1.0,
step = 0.01,
2022-05-30 20:22:42 +02:00
value = 1.0
2022-05-30 19:32:19 +02:00
),
sliderInput(
"mean_expression",
verticalLayout(
strong("Mean expression"),
div(paste0(
"Average of the gene's expression across all ",
"samples."
))
),
min = -1.0,
max = 1.0,
step = 0.01,
value = 1.0
),
sliderInput(
"sd_expression",
verticalLayout(
strong("Standard deviation"),
paste0(
"Standard deviation of the gene's expression ",
"across all samples."
)
),
min = -1.0,
max = 1.0,
step = 0.01,
value = -1.0
)
2022-05-07 17:54:23 +02:00
),
2022-05-30 19:32:19 +02:00
mainPanel(
width = 9,
h3("Distribution of scores"),
2022-05-30 20:08:54 +02:00
h4("Overview"),
plotly::plotlyOutput("overview_plot", height = "200px"),
h4("Focus on top genes"),
2022-05-30 19:32:19 +02:00
div(paste0(
"Click or drag within the figure to select genes of ",
"interest."
)),
plotly::plotlyOutput("scores_plot"),
h3("Detailed ranking"),
div(paste0(
"Click on gene names to view them using the Ensembl ",
"genome browser."
)),
div(class = "p-1"),
DT::dataTableOutput("selected_genes")
2022-05-07 17:54:23 +02:00
)
2022-05-30 19:32:19 +02:00
)
),
tabPanel(
title = "Help"
),
tabPanel(
title = "Publication"
2022-05-07 17:54:23 +02:00
)
2022-05-30 19:32:19 +02:00
)
2022-05-07 17:54:23 +02:00
}