Skye                  package:MASS                  R Documentation

_A_F_M _C_o_m_p_o_s_i_t_i_o_n_s _o_f _A_p_h_y_r_i_c _S_k_y_e _L_a_v_a_s

_D_e_s_c_r_i_p_t_i_o_n:

     The `Skye' data frame has 23 rows and 3 columns.

_U_s_a_g_e:

     data(Skye)

_F_o_r_m_a_t:

     This data frame contains the following columns:

     `_A' Percentage of sodium and potassium oxides

     `_F' Percentage of iron oxide

     `_M' Percentage of magnesium oxide

_S_o_u_r_c_e:

     J. Aitchison (1986) The Statistical Analysis of Compositional
     Data. Chapman and Hall, p.360.

     R.N. Thompson, J. Esson and A.C. Duncan (1972)  Major element
     chemical variation in the Eocene lavas of the Isle of Skye. J.
     Petrology 13, 219-253.

_E_x_a_m_p_l_e_s:

     # ternary() is from the on-line answers.
     ternary <- function(X, pch = par("pch"), lcex = 1,
                         add = FALSE, ord = 1:3, ...)
     {
       X <- as.matrix(X)
       if(any(X) < 0) stop("X must be non-negative")
       s <- drop(X %*% rep(1, ncol(X)))
       if(any(s<=0)) stop("each row of X must have a positive sum")
       if(max(abs(s-1)) > 1e-6) {
         warning("row(s) of X will be rescaled")
         X <- X / s
       }
       X <- X[, ord]
       s3 <- sqrt(1/3)
       if(!add) 
       {
         oldpty <- par("pty")
         on.exit(par(pty=oldpty))
         par(pty="s")
         plot(c(-s3, s3), c(0.5-s3, 0.5+s3), type="n", axes=FALSE,
              xlab="", ylab="")
         polygon(c(0, -s3, s3), c(1, 0, 0), density=0)
         lab <- NULL
         if(!is.null(dn <- dimnames(X))) lab <- dn[[2]]
         if(length(lab) < 3) lab <- as.character(1:3)
         eps <- 0.05 * lcex
         text(c(0, s3+eps*0.7, -s3-eps*0.7),
              c(1+eps, -0.1*eps, -0.1*eps), lab, cex=lcex)
       }
       points((X[,2] - X[,3])*s3, X[,1], ...)
     }

     data(Skye)
     ternary(Skye/100, ord=c(1,3,2))

