mirror of
https://github.com/johrpan/geposanui.git
synced 2025-10-26 11:17:24 +01:00
Add basic filters to the UI
This commit is contained in:
parent
d3151957a3
commit
1c43433600
2 changed files with 26 additions and 6 deletions
17
server.R
17
server.R
|
|
@ -9,16 +9,21 @@ source("util.R")
|
|||
|
||||
data <- run_cached("input", load_input, "input")
|
||||
results <- run_cached("results", process_input, data)
|
||||
merged <- merge(results, data$genes, by.x = "gene", by.y = "id")
|
||||
setorder(merged, -cluster_length)
|
||||
|
||||
server <- function(input, output) {
|
||||
filtered <- results[cluster_length >= 10]
|
||||
merged <- merge.data.table(filtered, data$genes, by.x = "gene", by.y = "id")
|
||||
setorder(merged, -cluster_length)
|
||||
filtered <- reactive({
|
||||
merged[
|
||||
cluster_length >= input$length &
|
||||
cluster_mean >= input$range[1] * 1000000 &
|
||||
cluster_mean <= input$range[2] * 1000000
|
||||
]
|
||||
})
|
||||
|
||||
output$genes <- renderDT({
|
||||
datatable(
|
||||
merged[, .(.I, name, chromosome, cluster_length, cluster_mean)],
|
||||
rownames = FALSE,
|
||||
filtered()[, .(.I, name, chromosome, cluster_length, cluster_mean)],
|
||||
colnames = c(
|
||||
"Rank",
|
||||
"Gene",
|
||||
|
|
@ -31,7 +36,7 @@ server <- function(input, output) {
|
|||
})
|
||||
|
||||
output$scatter <- renderPlot({
|
||||
gene_ids <- merged[input$genes_rows_selected, gene]
|
||||
gene_ids <- filtered()[input$genes_rows_selected, gene]
|
||||
scatter_plot(gene_ids, data)
|
||||
})
|
||||
}
|
||||
15
ui.R
15
ui.R
|
|
@ -7,6 +7,21 @@ ui <- fluidPage(
|
|||
position = "right",
|
||||
sidebarPanel(
|
||||
h3("Candidate selection"),
|
||||
sliderInput(
|
||||
"range",
|
||||
"Gene position (Mbp)",
|
||||
min = 0,
|
||||
max = 50,
|
||||
value = c(0, 15),
|
||||
step = 0.1
|
||||
),
|
||||
sliderInput(
|
||||
"length",
|
||||
"Minimum cluster size",
|
||||
min = 0,
|
||||
max = 30,
|
||||
value = 10
|
||||
),
|
||||
DTOutput("genes"),
|
||||
width = 3
|
||||
),
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue