# NOT RUN {
# for non-compositional data:
data("dataobs")
data("uncertainties")
myqda = vqda(x = dataobs[, 1:2], uncertainties = uncertainties[, 1:2], grouping = dataobs$Group)
mypred = predict(myqda, newdata = dataobs[, 1:2], newerror = uncertainties[, 1:2])
forplot = cbind(dataobs, LG1 = mypred$posterior[,1])
if (require("ggplot2")) {
scatter_plot = ggplot(data = forplot, aes(x = Var1, y = Var2)) +
geom_point(aes(shape = Group, color = LG1))
if (require("ggthemes")) {
scatter_plot = scatter_plot +
scale_color_gradientn(colours = colorblind_pal()(5))
}
scatter_plot
}
# for compositional data
data("dataobs_coda")
data("uncertainties_coda")
require(compositions)
# generate ilr-transformation (from package 'compositions')
data_ilr = ilr(dataobs_coda[, 1:3])
uncert_ilr = t(simplify2array(apply(uncertainties_coda[, 1:3],1,
function(Delta) clrvar2ilr(diag(Delta)))))
uncert_ilr = rmult(uncert_ilr) # change class into rmult from package 'compositions'
myqda_coda = vqda(x = data_ilr, uncertainties = uncert_ilr, grouping = dataobs_coda$Group)
mypred_coda = predict(myqda_coda, newdata = data_ilr, newerror = uncert_ilr)
forplot_coda = cbind(dataobs_coda, LG1 = mypred_coda$posterior[,1])
# if 'ggtern' is installed, you can plot via ggtern:
# if (require("ggtern")) {
# ternary_plot = ggtern(data = forplot_coda, aes(x = Var1, y = Var2, z = Var3)) +
# geom_point(aes(shape = Group, color = LG1))
# if (require("ggthemes")) {
# ternary_plot = ternary_plot +
# scale_color_gradientn(colours = colorblind_pal()(5))
# }
# ternary_plot
# }
# }
Run the code above in your browser using DataLab