secondary y-axis
This commit is contained in:
parent
b2e1a78b7b
commit
944e63e256
|
@ -31,6 +31,7 @@ export(ax_title)
|
||||||
export(ax_tooltip)
|
export(ax_tooltip)
|
||||||
export(ax_xaxis)
|
export(ax_xaxis)
|
||||||
export(ax_yaxis)
|
export(ax_yaxis)
|
||||||
|
export(ax_yaxis2)
|
||||||
export(bar_opts)
|
export(bar_opts)
|
||||||
export(events_opts)
|
export(events_opts)
|
||||||
export(heatmap_opts)
|
export(heatmap_opts)
|
||||||
|
|
|
@ -1156,8 +1156,52 @@ ax_yaxis <- function(ax,
|
||||||
crosshairs = NULL,
|
crosshairs = NULL,
|
||||||
...) {
|
...) {
|
||||||
params <- c(as.list(environment()), list(...))[-1]
|
params <- c(as.list(environment()), list(...))[-1]
|
||||||
.ax_opt2(ax, "yaxis", l = dropNulls(params))
|
yaxis <- .get_ax_opt(ax, "yaxis")
|
||||||
|
if (inherits(yaxis, "yaxis2")) {
|
||||||
|
yaxis[[1]] <- dropNulls(params)
|
||||||
|
} else {
|
||||||
|
yaxis <- dropNulls(params)
|
||||||
|
class(yaxis) <- c(class(yaxis), "yaxis1")
|
||||||
}
|
}
|
||||||
|
.ax_opt2(ax, "yaxis", l = yaxis)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
#' Secondary Y-axis options
|
||||||
|
#'
|
||||||
|
#' @param ax A \code{apexcharts} \code{htmlwidget} object.
|
||||||
|
#' @param ... See arguments from \code{\link{ax_yaxis}}.
|
||||||
|
#'
|
||||||
|
#' @return A \code{apexcharts} \code{htmlwidget} object.
|
||||||
|
#' @export
|
||||||
|
#'
|
||||||
|
#' @examples
|
||||||
|
#'
|
||||||
|
#' library(dplyr)
|
||||||
|
#' data("economics_long", package = "ggplot2")
|
||||||
|
#'
|
||||||
|
#' eco <- economics_long %>%
|
||||||
|
#' filter(variable %in% c("pce", "pop")) %>%
|
||||||
|
#' filter(date >= "2000-01-01")
|
||||||
|
#'
|
||||||
|
#' apex(eco, aes(x = date, y = value, color = variable), type = "line") %>%
|
||||||
|
#' ax_yaxis(title = list(text = "Pce")) %>%
|
||||||
|
#' ax_yaxis2(opposite = TRUE, title = list(text = "Pop"))
|
||||||
|
#'
|
||||||
|
ax_yaxis2 <- function(ax, ...) {
|
||||||
|
params <- dropNulls(list(...))
|
||||||
|
yaxis <- .get_ax_opt(ax, "yaxis")
|
||||||
|
if (inherits(yaxis, "yaxis2")) {
|
||||||
|
yaxis[[2]] <- params
|
||||||
|
} else {
|
||||||
|
yaxis <- list(yaxis, params)
|
||||||
|
class(yaxis) <- c(setdiff(class(yaxis), "yaxis1"), "yaxis2")
|
||||||
|
ax$x$ax_opts$yaxis <- NULL
|
||||||
|
}
|
||||||
|
.ax_opt2(ax, "yaxis", l = yaxis)
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
#' Theme for charts
|
#' Theme for charts
|
||||||
|
|
|
@ -58,4 +58,11 @@ formatNoSci <- function(x) {
|
||||||
return(ax)
|
return(ax)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
# Get parameters from an \code{apexcharts} \code{htmlwidget} object.
|
||||||
|
.get_ax_opt <- function(ax, name) {
|
||||||
|
ax$x$ax_opts[[name]]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -0,0 +1,33 @@
|
||||||
|
% Generated by roxygen2: do not edit by hand
|
||||||
|
% Please edit documentation in R/apex-utils.R
|
||||||
|
\name{ax_yaxis2}
|
||||||
|
\alias{ax_yaxis2}
|
||||||
|
\title{Secondary Y-axis options}
|
||||||
|
\usage{
|
||||||
|
ax_yaxis2(ax, ...)
|
||||||
|
}
|
||||||
|
\arguments{
|
||||||
|
\item{ax}{A \code{apexcharts} \code{htmlwidget} object.}
|
||||||
|
|
||||||
|
\item{...}{See arguments from \code{\link{ax_yaxis}}}
|
||||||
|
}
|
||||||
|
\value{
|
||||||
|
A \code{apexcharts} \code{htmlwidget} object.
|
||||||
|
}
|
||||||
|
\description{
|
||||||
|
Secondary Y-axis options
|
||||||
|
}
|
||||||
|
\examples{
|
||||||
|
|
||||||
|
library(dplyr)
|
||||||
|
data("economics_long", package = "ggplot2")
|
||||||
|
|
||||||
|
eco <- economics_long \%>\%
|
||||||
|
filter(variable \%in\% c("pce", "pop")) \%>\%
|
||||||
|
filter(date >= "2000-01-01")
|
||||||
|
|
||||||
|
apex(eco, aes(x = date, y = value, color = variable), type = "line") \%>\%
|
||||||
|
ax_yaxis(title = list(text = "Pce")) \%>\%
|
||||||
|
ax_yaxis2(opposite = TRUE, title = list(text = "Pop"))
|
||||||
|
|
||||||
|
}
|
Loading…
Reference in New Issue