xts (version 0.12.1)

addPanel: Add a panel to an existing xts plot

Description

Apply a function to the data of an existing xts plot object and plot the result. FUN should have arguments x or R for the data of the existing xts plot object to be passed to. All other additional arguments for FUN are passed through ....

Usage

addPanel(FUN, main = "", on = NA, type = "l", col = NULL, lty = 1,
  lwd = 1, pch = 1, ...)

Arguments

FUN

an xts object to plot.

main

main title for a new panel if drawn.

on

panel number to draw on. A new panel will be drawn if on=NA.

type

the type of plot to be drawn, same as in plot.

col

color palette to use, set by default to rational choices.

lty

set the line type, same as in par.

lwd

set the line width, same as in par.

pch

the type of plot to be drawn, same as in par.

...

additional named arguments passed through to FUN and any other graphical passthrough parameters.

Author

Ross Bennett

Examples

Run this code
library(xts)
data(sample_matrix)
sample.xts <- as.xts(sample_matrix)

calcReturns <- function(price, method = c("discrete", "log")){
  px <- try.xts(price)
  method <- match.arg(method)[1L]
  returns <- switch(method,
    simple = ,
    discrete = px / lag(px) - 1,
    compound = ,
    log = diff(log(px)))
  reclass(returns, px)
}

# plot the Close
plot(sample.xts[,"Close"])
# calculate returns 
addPanel(calcReturns, method="discrete", type="h")
# Add simple moving average to panel 1
addPanel(rollmean, k=20, on=1)
addPanel(rollmean, k=40, col="blue", on=1)

Run the code above in your browser using DataCamp Workspace