# ::Free Statistics and Forecasting Software::

v1.1.23-r7
Secure website (SSL) | Donate to wessa.net

### :: Trivariate Scatterplots - Free Statistics Software (Calculator) ::

All rights reserved. The non-commercial (academic) use of this software is free of charge. The only thing that is asked in return is to cite this software when results are used in publications.

This free online software (calculator) computes the following charts for a trivariate dataset: 3-dimensional scatterplots, all combinations of 2-by-2 scatterplots, histograms, bivariate density plots with the corresponding contour plots and regression line.

This software enables the user to visually explore the relationship between 3 variables. In addition it illustrates how 3-dimensional scatterplots are related to 2-dimensional scatterplot matrices and density plots.

Enter (or paste) your data delimited by hard returns.

 Send output to: Browser Blue - Charts White Browser Black/White CSV MS Excel MS Word Data X (click to load default data) 4.2 4.7 6.3 6.7 6.8 6.8 6.2 6.4 6 8.2 6.5 6.8 8.7 10 7.9 9.2 8.1 6.9 6.5 Data Y: 101.9 98.1 97.6 99.4 100.8 96.5 92.9 94.4 91.7 97.1 100.4 96.6 96.3 96 95.9 100 99.7 99.9 99.8 Data Z: 94.4 85.5 83 84.4 90 90 89.1 89.1 87.7 89.2 91.4 91.9 93.4 92.4 91.9 100 104 100.8 100.3 Sample Range:(leave blank to include all observations) From: To: gridsize on x-axis (?) gridsize on y-axis (?) plot contours YN plot points YN Name of dataset X Name of dataset Y Name of dataset Z Chart options Width: Height:

Click here to edit the underlying code of this R Module.

 Source code of R module x <- array(x,dim=c(length(x),1)) colnames(x) <- par5 y <- array(y,dim=c(length(y),1)) colnames(y) <- par6 z <- array(z,dim=c(length(z),1)) colnames(z) <- par7 d <- data.frame(cbind(z,y,x)) colnames(d) <- list(par7,par6,par5) par1 <- as.numeric(par1) par2 <- as.numeric(par2) if (par1>500) par1 <- 500 if (par2>500) par2 <- 500 if (par1<10) par1 <- 10 if (par2<10) par2 <- 10 library(GenKern) library(lattice) panel.hist <- function(x, ...) { usr <- par("usr"); on.exit(par(usr)) par(usr = c(usr[1:2], 0, 1.5) ) h <- hist(x, plot = FALSE) breaks <- h\$breaks; nB <- length(breaks) y <- h\$counts; y <- y/max(y) rect(breaks[-nB], 0, breaks[-1], y, col="black", ...) } bitmap(file="cloud1.png") cloud(z~x*y, screen = list(x=-45, y=45, z=35),xlab=par5,ylab=par6,zlab=par7) dev.off() bitmap(file="cloud2.png") cloud(z~x*y, screen = list(x=35, y=45, z=25),xlab=par5,ylab=par6,zlab=par7) dev.off() bitmap(file="cloud3.png") cloud(z~x*y, screen = list(x=35, y=-25, z=90),xlab=par5,ylab=par6,zlab=par7) dev.off() bitmap(file="pairs.png") pairs(d,diag.panel=panel.hist) dev.off() x <- as.vector(x) y <- as.vector(y) z <- as.vector(z) bitmap(file="bidensity1.png") op <- KernSur(x,y, xgridsize=par1, ygridsize=par2, correlation=cor(x,y), xbandwidth=dpik(x), ybandwidth=dpik(y)) image(op\$xords, op\$yords, op\$zden, col=terrain.colors(100), axes=TRUE,main="Bivariate Kernel Density Plot (x,y)",xlab=par5,ylab=par6) if (par3=="Y") contour(op\$xords, op\$yords, op\$zden, add=TRUE) if (par4=="Y") points(x,y) (r<-lm(y ~ x)) abline(r) box() dev.off() bitmap(file="bidensity2.png") op <- KernSur(y,z, xgridsize=par1, ygridsize=par2, correlation=cor(y,z), xbandwidth=dpik(y), ybandwidth=dpik(z)) op image(op\$xords, op\$yords, op\$zden, col=terrain.colors(100), axes=TRUE,main="Bivariate Kernel Density Plot (y,z)",xlab=par6,ylab=par7) if (par3=="Y") contour(op\$xords, op\$yords, op\$zden, add=TRUE) if (par4=="Y") points(y,z) (r<-lm(z ~ y)) abline(r) box() dev.off() bitmap(file="bidensity3.png") op <- KernSur(x,z, xgridsize=par1, ygridsize=par2, correlation=cor(x,z), xbandwidth=dpik(x), ybandwidth=dpik(z)) op image(op\$xords, op\$yords, op\$zden, col=terrain.colors(100), axes=TRUE,main="Bivariate Kernel Density Plot (x,z)",xlab=par5,ylab=par7) if (par3=="Y") contour(op\$xords, op\$yords, op\$zden, add=TRUE) if (par4=="Y") points(x,z) (r<-lm(z ~ x)) abline(r) box() dev.off()
 Top | Output | Charts | References | History | Feedback

 Cite this software as: Wessa P., (2012), 3-Dimensional Scatterplots (v1.0.5) in Free Statistics Software (v1.1.23-r7), Office for Research Development and Education, URL http://www.wessa.net/rwasp_cloud.wasp/ The R code is based on : Deepayan Sarkar (2006)., lattice: Lattice Graphics. R package, version 0.13-8. David Lucy and Robert Aykroyd (2004)., GenKern: Functions for generating and manipulating kernel density estimates., R package version 1.1-0.
 Top | Output | Charts | References | History | Feedback
 Top | Output | Charts | References | History | Feedback