cplot3d: 3D Scatter Plot with Classification Labels

View source: R/cplot3d.R

cplot3dR Documentation

3D Scatter Plot with Classification Labels

Description

cplot3d produces three dimensional scatter plot with classification labels of binary classes.

Usage

cplot3d(x1, x2, x3, ypred, yobs, colors = c("red", "blue"), 
  symbols = c("circle", "o"), size = 10, xlab = NULL, ylab = NULL, zlab = NULL, 
  title = NULL)

Arguments

x1

the x coordinate of points in the plot.

x2

the y coordinate of points in the plot.

x3

the z coordinate of points in the plot.

ypred

a factor of the predicted binary response variable.

yobs

a factor of the observed binary response variable.

colors

a vector of two colors specifying the levels of the observed binary response variable.

symbols

a vector of two symbols specifying the levels of the predicted binary response variable.

size

the size of symbols.

xlab

a label for the x axis, defaults to a description of x1.

ylab

a label for the y axis, defaults to a description of x2.

zlab

a label for the z axis, defaults to a description of x3.

title

a main title of the plot.

Details

Symbols indicate the observed classes of binary response. Colors show TRUE or FALSE classification of the observations.

Value

An object with class "plotly" and "htmlwidget".

Author(s)

Osman Dag

See Also

plot_ly

Examples


library(GMDH2)

library(mlbench)
data(BreastCancer)

data <- BreastCancer

# to obtain complete observations
completeObs <- complete.cases(data)
data <- data[completeObs,]

x <- data.matrix(data[,2:10])
y <- data[,11]

seed <- 12345
set.seed(seed)
nobs <- length(y)

# to split train, validation and test sets

indices <- sample(1:nobs)

ntrain <- round(nobs*0.6,0)
nvalid <- round(nobs*0.2,0)
ntest <- nobs-(ntrain+nvalid)

train.indices <- sort(indices[1:ntrain])
valid.indices <- sort(indices[(ntrain+1):(ntrain+nvalid)])
test.indices <- sort(indices[(ntrain+nvalid+1):nobs])


x.train <- x[train.indices,]
y.train <- y[train.indices]

x.valid <- x[valid.indices,]
y.valid <- y[valid.indices]

x.test <- x[test.indices,]
y.test <- y[test.indices]


set.seed(seed)
# to construct model via dce-GMDH algorithm
model <- dceGMDH(x.train, y.train, x.valid, y.valid)

# to obtain predicted classes for test set
y.test_pred <- predict(model, x.test, type = "class")

# to obtain confusion matrix and some statistics for test set
confMat(y.test_pred, y.test, positive = "malignant")

# to produce 3D scatter plot with classification labels for test set
cplot3d(x.test[,1], x.test[,6], x.test[,3], y.test_pred, y.test,
colors = c("red", "black"))


GMDH2 documentation built on Oct. 26, 2022, 5:06 p.m.

Related to cplot3d in GMDH2...