mirror of
https://github.com/johrpan/geposan.git
synced 2025-10-26 10:47:25 +01:00
plots: Add max_rank to score plot
This commit is contained in:
parent
1af138bf6f
commit
19bae34a96
2 changed files with 30 additions and 2 deletions
27
R/plots.R
27
R/plots.R
|
|
@ -7,11 +7,16 @@
|
||||||
#' will be highlighted in the plot.
|
#' will be highlighted in the plot.
|
||||||
#' @param labels Labels for the gene sets. This is required if gene sets are
|
#' @param labels Labels for the gene sets. This is required if gene sets are
|
||||||
#' given and has to have the same length.
|
#' given and has to have the same length.
|
||||||
|
#' @param max_rank The maximum rank of the highlighted genes. All genes that
|
||||||
|
#' are ranked lower will appear greyed out.
|
||||||
#'
|
#'
|
||||||
#' @seealso ranking()
|
#' @seealso ranking()
|
||||||
#'
|
#'
|
||||||
#' @export
|
#' @export
|
||||||
plot_scores <- function(ranking, gene_sets = NULL, labels = NULL) {
|
plot_scores <- function(ranking,
|
||||||
|
gene_sets = NULL,
|
||||||
|
labels = NULL,
|
||||||
|
max_rank = NULL) {
|
||||||
if (!requireNamespace("plotly", quietly = TRUE)) {
|
if (!requireNamespace("plotly", quietly = TRUE)) {
|
||||||
stop("Please install \"plotly\" to use this function.")
|
stop("Please install \"plotly\" to use this function.")
|
||||||
}
|
}
|
||||||
|
|
@ -60,6 +65,26 @@ plot_scores <- function(ranking, gene_sets = NULL, labels = NULL) {
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
if (!is.null(max_rank)) {
|
||||||
|
first_not_included_rank <- max_rank + 1
|
||||||
|
last_rank <- ranking[, .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
|
plot
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -4,7 +4,7 @@
|
||||||
\alias{plot_scores}
|
\alias{plot_scores}
|
||||||
\title{Plot a ranking as a scatter plot of scores.}
|
\title{Plot a ranking as a scatter plot of scores.}
|
||||||
\usage{
|
\usage{
|
||||||
plot_scores(ranking, gene_sets = NULL, labels = NULL)
|
plot_scores(ranking, gene_sets = NULL, labels = NULL, max_rank = NULL)
|
||||||
}
|
}
|
||||||
\arguments{
|
\arguments{
|
||||||
\item{ranking}{The ranking to visualize.}
|
\item{ranking}{The ranking to visualize.}
|
||||||
|
|
@ -14,6 +14,9 @@ will be highlighted in the plot.}
|
||||||
|
|
||||||
\item{labels}{Labels for the gene sets. This is required if gene sets are
|
\item{labels}{Labels for the gene sets. This is required if gene sets are
|
||||||
given and has to have the same length.}
|
given and has to have the same length.}
|
||||||
|
|
||||||
|
\item{max_rank}{The maximum rank of the highlighted genes. All genes that
|
||||||
|
are ranked lower will appear greyed out.}
|
||||||
}
|
}
|
||||||
\description{
|
\description{
|
||||||
This function requires the package \code{plotly}.
|
This function requires the package \code{plotly}.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue