## ----setup, include=FALSE----------------------------------------------------- library(knitr) opts_chunk$set(fig.align = "center", out.width = "70%", fig.width = 5, fig.height = 4, dev.args=list(pointsize=10), par = TRUE, # needed for setting hook collapse = TRUE, # collapse input & ouput code in chunks warning = FALSE) knit_hooks$set(par = function(before, options, envir) { if(before && options$fig.show != "none") par(mar=c(4.1,4.1,1.1,1.1), mgp=c(3,1,0), tcl=-0.5) }) # setupKnitr() # knit_hooks$set(rgl = hook_webgl) set.seed(1) # for exact reproducibility ## ----------------------------------------------------------------------------- library(msir) ## ----------------------------------------------------------------------------- n <- 200 p <- 5 b <- as.matrix(c(1,-1,rep(0,p-2))) x <- matrix(rnorm(n*p), nrow = n, ncol = p) y <- exp(0.5 * x%*%b) + 0.1*rnorm(n) MSIR <- msir(x, y) summary(MSIR) plot(MSIR, type = "evalues") plot(MSIR, type = "coefficients", which = 1) plot(MSIR, type = "2Dplot") ## ----------------------------------------------------------------------------- n <- 200 p <- 5 b <- as.matrix(c(1,-1,rep(0,p-2))) x <- matrix(rnorm(n*p), nrow = n, ncol = p) y <- (0.5 * x%*%b)^2 + 0.1*rnorm(n) MSIR <- msir(x, y) summary(MSIR) plot(MSIR, type = "evalues") plot(MSIR, type = "coefficients", which = 1) plot(MSIR, type = "2Dplot") ## ----------------------------------------------------------------------------- n <- 300 p <- 5 b1 <- c(1, 1, 1, rep(0, p-3)) b2 <- c(1,-1,-1, rep(0, p-3)) b <- cbind(b1,b2) x <- matrix(rnorm(n*p), nrow = n, ncol = p) y <- x %*% b1 + (x %*% b1)^3 + 4*(x %*% b2)^2 + rnorm(n) MSIR <- msir(x, y) summary(MSIR) plot(MSIR, type = "evalues") plot(MSIR, type = "coefficients", which = 1:2) plot(MSIR, which = 1:2) plot(MSIR, which = 1, type = "2Dplot", span = 0.7) plot(MSIR, which = 2, type = "2Dplot", span = 0.7) ## ---- eval=requireNamespace("rgl", quietly = TRUE), echo=1, fig.width = 4, fig.height = 4---- plot(MSIR, type = "spinplot") rgl::rglwidget(width=500, height=450) ## ---- eval=requireNamespace("rgl", quietly = TRUE), echo=1, fig.width = 4, fig.height = 4---- plot(MSIR, type = "spinplot", span = 0.75) rgl::rglwidget(width=500, height=450) ## ----------------------------------------------------------------------------- x1 <- rnorm(100) x2 <- rnorm(100) y <- 2*x1 + x2^2 + 0.5*rnorm(100) ## ---- eval=requireNamespace("rgl", quietly = TRUE), echo=1-------------------- spinplot(x1, y, x2) rgl::rglwidget(width=500, height=450) ## ---- eval=requireNamespace("rgl", quietly = TRUE), echo=1-------------------- spinplot(x1, y, x2, scaling="aaa") rgl::rglwidget(width=500, height=450) ## ---- eval=requireNamespace("rgl", quietly = TRUE), echo=1-------------------- spinplot(x1, y, x2, rem.lin.trend = "TRUE") rgl::rglwidget(width=500, height=450) ## ---- eval=requireNamespace("rgl", quietly = TRUE), echo=1-------------------- spinplot(x1, y, x2, fit.smooth = TRUE) rgl::rglwidget(width=500, height=450) ## ---- eval=requireNamespace("rgl", quietly = TRUE), echo=1-------------------- spinplot(x1, y, x2, fit.ols = TRUE) rgl::rglwidget(width=500, height=450) ## ----------------------------------------------------------------------------- x <- iris[,1:3] y <- iris[,5] ## ---- eval=requireNamespace("rgl", quietly = TRUE), echo=1-------------------- spinplot(x) rgl::rglwidget(width=500, height=450) ## ---- eval=requireNamespace("rgl", quietly = TRUE), echo=1-------------------- spinplot(x, markby = y) rgl::rglwidget(width=500, height=450) ## ---- eval=requireNamespace("rgl", quietly = TRUE), echo=1-------------------- spinplot(x, markby = y, pch = c(0,3,1), col.points = c("lightcyan", "yellow", "lightgreen"), background = "black") rgl::rglwidget(width=500, height=450) ## ---- echo=-1------------------------------------------------------------------------------------- options(width=100) sessionInfo()