R/geom_pointrange_interactive.R

Defines functions geom_pointrange_interactive

Documented in geom_pointrange_interactive

#' @rdname geom_crossbar_interactive
#' @export
geom_pointrange_interactive <- function(...)
  layer_interactive(geom_pointrange, ...)

#' @rdname ggiraph-ggproto
#' @format NULL
#' @usage NULL
#' @export
GeomInteractivePointrange <- ggproto(
  "GeomInteractivePointrange",
  GeomPointrange,
  default_aes = add_default_interactive_aes(GeomPointrange),
  parameters = interactive_geom_parameters,
  draw_key = interactive_geom_draw_key,
  draw_panel = function(data,
                        panel_params,
                        coord,
                        fatten = 4,
                        flipped_aes = FALSE, 
                        .ipar = IPAR_NAMES) {
    if (is.null(data[[flipped_names(flipped_aes)$y]]))
      return(
        GeomInteractiveLinerange$draw_panel(data, panel_params, coord, flipped_aes = flipped_aes, .ipar = .ipar)
      )

    ggname("geom_pointrange", gTree(
      children = gList(
        GeomInteractiveLinerange$draw_panel(data, panel_params, coord, flipped_aes = flipped_aes, .ipar = .ipar),
        GeomInteractivePoint$draw_panel(transform(data, size = size * fatten), panel_params, coord, .ipar = .ipar)
      )
    ))
  }
)

Try the ggiraph package in your browser

Any scripts or data that you put into this service are public.

ggiraph documentation built on March 31, 2023, 9:53 p.m.