plotModelDotDensity3D: Plot Gaussian Mixture Model density of two-dimensional data...

View source: R/plotModelDotDensity3D.R

plotModelDotDensity3DR Documentation

Plot Gaussian Mixture Model density of two-dimensional data in three dimensions

Description

Compares the continuous density plot of a dataset with the density distribution defined by one or more gaussians (GMM; Mean, Cov, Weights). The datapoints from the dataset have the density assigned by the GMM component with the the highest probability (class assignment must be given and is not computed here).

Usage

plotModelDotDensity3D(Data, XKernel, YKernel, EmpiricDataPDE, DotDensity,
Means, Covariances, Weights, MainAxesAngle,
Colors, Cls, Camera = NULL, ShowScatter = TRUE,
ShowMarkers = FALSE, AxNames = c("X", "Y"), Source = "F1", Debug = FALSE)

Arguments

Data

[1:n, 1:2] Numeric matrix with n observations and 2 features.

XKernel

[1:x] Numeric vector defining domain of x axis.

YKernel

[1:x] Numeric vector defining domain of y axis.

EmpiricDataPDE

[1:n] Numeric vector with density estimation of Data defined for each datapoint within the Data.

DotDensity

[1:n] Numeric vector with density values for each observation from Data.

Means

List with l [1:2] numerical vector defining the means of the l GMM components.

Covariances

List with l [1:2, 1:2] numerical matrices defining the covariance matrices of the l GMM components.

Weights

[1:l] Numerical vector with weights for each GMM component.

MainAxesAngle

List of numeric vectors with 1st and 2nd main axes of a 2D ellipsoid and the respective angles measured to the first unit vector c(0,1).

Colors

[1:l] Character vector with l color names or more.

Cls

[1:n] Numerical vector of size n containing the classes of each observation.

Camera

List of attributes concerning the camera angle for plotly visualizations.

ShowScatter

Boolean (Default=TRUE). T: Show Data Scatter with empirical estimated density. F: Do not show the scatter.

ShowMarkers

Boolean (Default=TRUE). T: Show markers of GMM. F: Do not show the markers.

AxNames

[1:2] Character vector with ax names for plot description.

Source

(Default = "F1"). Character indicating plot source. Important attribute for plotly in shiny in order to keep control of specific panels.

Debug

Boolean (Default=FALSE). TRUE: Show developer information and warnings in terminal. FALSE: Show nothing.

Details

Uses a density estimation (discretized computation on grid) to display a continuous density plot on domain defined by XKernel and YKernel of the whole empircal data distribution. The density of the GMM components is computed via an multivariate gaussian formula. The datapoints take the density of the GMM components with highest probability to take the specific datapoint. This computation must be done outside of this routine (give the Cls/Class/Labels as parameter). Parameter Camera is important for shiny to let the view fixed during continuous updates of the interactive visualization (Shiny App). The Source is important to separate between multiple visualizations in the Shiny App.

Value

plotOut

Plotly object containing plot for direct visualization.

Author(s)

Quirin Stier

Examples

## Not run: 
data(EngyTime)
Data = EngyTime
densityMap = MASS::kde2d(Data[,1], Data[,2], n = 100)
z = sapply(1:nrow(Data), function(i){
  densityMap$z[
    which.min(abs(densityMap$x - Data[i,1])),
    which.min(abs(densityMap$y - Data[i,2]))
    ]
})
dataDensity = z
Cls = rep(1, nrow(Data))
DataSample = sample(1:nrow(Data), min(nrow(Data), 5000))
Colors = c("red", "blue")
Plot_3D_DataDensity(Data, DataSample, Colors, Cls, densityMap, dataDensity,
Show3DPoints = T, Source = "F1")

## End(Not run)

Mthrun/AdaptGauss2D documentation built on July 19, 2022, 3:11 a.m.