mirror of
https://github.com/johrpan/geposanui.git
synced 2025-10-26 19:27:24 +01:00
Use plots from geposan
This commit is contained in:
parent
f485eadaf5
commit
b5957262a3
3 changed files with 21 additions and 57 deletions
|
|
@ -1,53 +0,0 @@
|
||||||
# Draw a plot displaying the rank of reference genes.
|
|
||||||
#
|
|
||||||
# The input table should contain the following columns:
|
|
||||||
#
|
|
||||||
# - `gene` Gene IDs of genes to display.
|
|
||||||
# - `name` Name of genes to display.
|
|
||||||
# - `score` Score of the genes.
|
|
||||||
# - `rank` Rank of the genes based on the score.
|
|
||||||
#
|
|
||||||
# @param results Results to display.
|
|
||||||
# @param reference_gene_ids IDs of reference genes.
|
|
||||||
# @param max_rank Last rank of the included genes.
|
|
||||||
rank_plot <- function(results, reference_gene_ids, max_rank) {
|
|
||||||
plot <- plotly::plot_ly() |> plotly::add_trace(
|
|
||||||
data = results,
|
|
||||||
x = ~rank,
|
|
||||||
y = ~score,
|
|
||||||
name = "All genes",
|
|
||||||
type = "scatter",
|
|
||||||
mode = "line",
|
|
||||||
hoverinfo = "skip"
|
|
||||||
) |> plotly::add_trace(
|
|
||||||
data = results[gene %chin% reference_gene_ids],
|
|
||||||
x = ~rank,
|
|
||||||
y = ~score,
|
|
||||||
color = ~gene,
|
|
||||||
name = ~name,
|
|
||||||
width = 10,
|
|
||||||
type = "bar"
|
|
||||||
) |> plotly::layout(
|
|
||||||
xaxis = list(title = "Ranks"),
|
|
||||||
yaxis = list(title = "Score")
|
|
||||||
)
|
|
||||||
|
|
||||||
first_not_included_rank <- max_rank + 1
|
|
||||||
last_rank <- results[, .N]
|
|
||||||
|
|
||||||
if (first_not_included_rank <= last_rank) {
|
|
||||||
plot <- plot |> plotly::layout(
|
|
||||||
shapes = list(
|
|
||||||
type = "rect",
|
|
||||||
fillcolor = "black",
|
|
||||||
opacity = 0.1,
|
|
||||||
x0 = first_not_included_rank,
|
|
||||||
x1 = last_rank,
|
|
||||||
y0 = 0.0,
|
|
||||||
y1 = 1.0
|
|
||||||
)
|
|
||||||
)
|
|
||||||
}
|
|
||||||
|
|
||||||
plot
|
|
||||||
}
|
|
||||||
17
R/server.R
17
R/server.R
|
|
@ -154,10 +154,19 @@ server <- function(input, output, session) {
|
||||||
})
|
})
|
||||||
|
|
||||||
output$rank_plot <- plotly::renderPlotly({
|
output$rank_plot <- plotly::renderPlotly({
|
||||||
rank_plot(
|
geposan::plot_scores(
|
||||||
results(),
|
ranking(),
|
||||||
preset()$reference_gene_ids,
|
gene_sets = list(preset()$reference_gene_ids),
|
||||||
results_filtered()[, max(rank)]
|
labels = "TPE-OLD genes",
|
||||||
|
max_rank = results_filtered()[, max(rank)]
|
||||||
|
)
|
||||||
|
})
|
||||||
|
|
||||||
|
output$boxplot <- plotly::renderPlotly({
|
||||||
|
geposan::plot_boxplot(
|
||||||
|
ranking(),
|
||||||
|
gene_sets = list(preset()$reference_gene_ids),
|
||||||
|
labels = "TPE-OLD genes"
|
||||||
)
|
)
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|
|
||||||
8
R/ui.R
8
R/ui.R
|
|
@ -48,6 +48,14 @@ ui <- fluidPage(
|
||||||
height = "600px"
|
height = "600px"
|
||||||
)
|
)
|
||||||
),
|
),
|
||||||
|
div(
|
||||||
|
style = "margin-top: 16px",
|
||||||
|
plotly::plotlyOutput(
|
||||||
|
"boxplot",
|
||||||
|
width = "100%",
|
||||||
|
height = "600px"
|
||||||
|
)
|
||||||
|
),
|
||||||
),
|
),
|
||||||
tabPanel(
|
tabPanel(
|
||||||
"Analysis",
|
"Analysis",
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue