Version 1.8.5
Added the
LearnDisdataset (Tabachnick & Fidell, 2013, Table 7.1): a small 3 (Disability: Mild/Moderate/Severe) x 2 (Treatment/Control) factorial giving reading (WRAT_R) and arithmetic (WRAT_A) achievement scores andIQ, for worked MANOVA/MANCOVA examples and, in particular, a citable, hand-checkable example for the Roy-Bargmann stepdown analysis under development. ItsDisabilityfactor is ordered (Mild < Moderate < Severe).Added the
ReadingDisabilitydataset: 571 children classified into four reading-achievement groups (Severe/Mild/Average/Superior, an ordered factor) on six cognitive/achievement measures (PPVT,RD,EF,VF,VMI,SIM). Reconstructed by simulation from the group means, SDs, and pooled within-cells correlations in Bray & Maxwell (1985, Multivariate Analysis of Variance, Table 2.3).Added
traceCI(): analytic (Bai & Silverstein, 2004) confidence intervals for the trace (sum of eigenvalues) of one or more covariance matrices, complementinglogdetCI()andeigstatCI().Added
stdmodel()andstdcoef()for standardized (“beta”) coefficients onlm/mlmobjects: responses and numeric predictors are standardized, factor predictors are left raw.coefplot.mlm()gains astd = TRUEargument using this to plot standardized-coefficient confidence ellipses.Added a live
heplot3d()example to theHE_manovavignette’s MockJury section (ratings onphyattr,independent, andsophisticated), shown as a rotatable, zoomable 3D widget.
Maintenance
Clarified the
coefplot.mlm()documentation to explain how it differs fromcar::confidenceEllipse()’smlmmethod:coefplot()fixes a pair of responses as plot axes and overlays one ellipse per predictor, whileconfidenceEllipse()fixes a pair of coefficients and shows their joint confidence region.Added an explicit
rgl::rglwidget()call toheplot3d()’s example, so its pkgdown reference page shows an interactive 3D plot instead of nothing.rgl’s automatic pkgdown widget support only fires for a visibly-returned object of classrglId/rglOpen3d;heplot3d()returns a different class invisibly, so nothing triggered it without this explicit call.Calling
rgl::rglwidget()directly in abookdown-based,as_isvignette (likeHE_manova’s new example above) renders fine in a standalone vignette build but shows as a blank box on the pkgdown site:pkgdownreplaces the<head>of the article page when assembling it, silently dropping the<script>tags the widget needs. The fix – pre-rendering the widget to a self-contained file and embedding it with an<iframe>instead – is documented inheplot3d()’s@detailsfor reuse in other vignettes.Fixed math rendering on the pkgdown site for all four
as_isvignettes (HE_manova,HE_mmra,Robust,datasets):_pkgdown.ymlnever configured a math renderer, so$...$expressions showed as literal text instead of typeset equations. Configured KaTeX (matching the working setup already used in thematlibpackage) after finding that MathJax’s CDN bundle doesn’t support\boldsymbol, needed for bold Greek letters like\boldsymbol{\beta}(\mathbf{}only covers Roman symbols, not Greek).Bare/dollar-math
H/Ereferences to the hypothesis and error matrices (inheplot(),heplot1d(),heplot3d(),pairs.mlm(),etasq(), and the package overview) are now\eqn{\mathbf{H}}{H}/\eqn{\mathbf{E}}{E}– the earlier$\mathbf{H}$form isn’t valid Rd and rendered as mangled literal text in plain?funhelp.Modernized roxygen documentation across
R/: legacy Rd macros (\code{},\link{}/\link[pkg]{},\pkg{},\emph{}) converted to markdown syntax in 44 files, fixing two pre-existing broken links (missing-backslash typos) and two stalergllink targets found along the way.Reorganized vignette assets: images and figures moved from
vignettes/fig/tovignettes/images/, and four orphaned, unreferenced 2017-era images removed.Dropped the hard
Depends: broomforglance.mlm(); nowImports: generics(the lightweight package defining theglancegeneric, whichbroomitself depends on) instead, withbroommoved toSuggests.glance()still works the same as before with justlibrary(heplots).
Version 1.8.4
CRAN release: 2026-08-23
CRAN resubmission of v1.8.3, addressing two URL findings from the win-builder CRAN-incoming-feasibility check.
Fixed the
NeuroCogdocumentation to cite the Nuechterlein et al. (2008) reference by DOI instead of a PubMed URL that CRAN flagged as needing an update. A win-builder dry run then flagged the replacement itself: CRAN wants baredoi.orglinks written with the\doi{}macro, not\url{}. Fixed that inNeuroCog, and found (and fixed the same way) two more pre-existing baredoi.orgreferences inIwasaki_Big_FiveandTIPI’s documentation that hadn’t yet been flagged.Withdrew
vignettes/repeated-JSS.pdf(a static reprint of the published Journal of Statistical Software article, included via theR.rsp::asisengine) tovignettes-old/, rather than continue explaining its embedded non-canonical URLs to CRAN on every submission. Dropped the now-unusedR.rspfromSuggests/VignetteBuilder.Added a second, shorter worked example to the
Robust.Rmdvignette using therobustbase::pulpfiberdata (Rousseeuw et al. 2004): a multivariate multiple regression contrasted with the earlier Pottery MANOVA example, using the weight plot and an MCD-baseddistancePlot()to distinguish vertical outliers, a bad leverage point, and two good leverage points.distancePlot()documentation now cross-linksrobmlm(),car::influencePlot(), andmvinfluence’sinfluencePlot.mlm()method; fixedverboseargument not actually gating the cutoffcat()line.
Version 1.8.3
This is a modest cumulative release of several versions since the last CRAN release (v 1.8.1)
- Added a link to the NLSY97 Cohort Index in
NLSY’s documentation. - Added
pvPlot()for partial variable plots: visualizes the partial correlation between two variables after controlling for all others, as a scatterplot of the residuals from regressing each on the rest, enhanced with a data ellipse, regression line, and point labels for unusual cases. Similar in spirit tocar::avPlots(), but works directly on a data frame rather than a fitted model. - Added cute 404 page for
pkgdown - Added a general
.release_checks.Rscript in the repo (but.Rbuildignored)
Version 1.8.2
- add
eigstatsCI()to calculate bootstrapped confidence intervals for eigenvalue statistics, as used inplot.boxM() - added
plot_boxM_boot()to plot these with bootstrapped CIs - added
traceCI()for use inplot.boxM()
Version 1.8.1
CRAN release: 2025-12-07
This is a large cumulative release of several versions since the last CRAN release.
-
label.ellipse()now returns invisibly the coordinates where the label was placed. -
heplot()adds alabel.cexargument to control the size of labels on H/E ellipses. Thelabel.posargument is vectorized, so that the changes tolabel.ellipse()now apply. -
boxM()&plot.boxM()now correctly handle the situation where one or more groups have singular covariance matrices because !n>p - Fixed bug in
covEllipses.boxM()method.boxM()now returnsngroupsandmeansamong it’s components. - add @family tags to improve cross-referencing in documentation
Version 1.8.0
- describe more fully constructing the datasets table using concept tags
- added
text_usr()to add text in normalized device coordinates - begin to convert documentation to use markdown via {roxygen2md}
-
label.ellipse()re-written to allow a fully general way to specify label positions [Thx: Claude]
Version 1.7.9
- plot.robmlm() gains a
groupsarg to vary point color andpch - plot.robmlm() gains a
group.axisarg to draw an axis identifying the groups at the top of the plot.
Version 1.7.8
CRAN release: 2025-08-18
Several small maintenance fixes, plus a new diagnostic plot and a new vignette
o Added distancePlot() for plots of Mahalanobis distances of X vs Y. For an MLM, diagnoses high leverage and large residuals o Added a vignette on robust MLMs using robmlm() and diagnostic plots o Added rel_diff() to calculate relative difference between two arrays or data frames o Fixed buglet in plot.robmlm() o Fixed some non-canonical URLs o Fixed cex buglet in distancePlot()
Version 1.7.6
- fixing data, group names in boxM to avoid necessity for
gplabelin plots. - added reference for CI in
plot.boxm()
Version 1.7.5
CRAN release: 2025-05-24
Fix bugs and add some args for better control
- Edit description of NLSY data and extend the examples to show
coefplot(),cqplot() - Revise documentation for
robmlm() - Add dev/pulpfiber.R for a classic robust MLM example
- fix default Y axis label in
plot.robmlm() - fixed bug in
coefplot.mlm()in selecting terms withparm. -
coefplot.mlm()gains acex.labargument - Fleshed out details of Rohwer dataset PA measures
- Fixed nits from R CMD check
Version 1.7.4 (2025-04-15)
CRAN release: 2025-04-16
This is largely a maintenance release, but adds a function to identify “noteworthy” points in 2D scatterplots.
- added plotting all X vs all Y to Rohwer examples
- added
schoolsitesdataset, providing additional variables related to theschooldatadataset. -
cqplot()now prints a warning if there are missing cases and also returns the upper tail p-values corresponding to Mahalanobis . - Default
method.idincqplot()changed to “r”, to identify points with the largest . - added
noteworthy(x, y)as a utility to select “noteworthy” observations in a 2D plot, extending the ideas incar::showLabels() - corrected some minor documentation problems
- fixed some 301 “moved” URLs
- Now Depends: on R >= 4.1.0 because package uses native pipes |>
- Added Suggests: KernSmooth, aplpack, foreign, used in some demos
Version 1.7.3 (2024-12-05)
CRAN release: 2024-12-22
This is a moderate update, adding new functionality
-
leveneTests()gains formula and lm methods -
bartlettTests()gains formula and lm methods -
colDevs()gains agroup.varargument; examples extended - Added
uniStats()for an anova version ofglance.mlm() - Corrected documentation of
covEllipses()to more accurately describe recycling of arguments. -
size="significance"now allowed as a synonym forsize="evidence"in heplot functions.
Version 1.7.2 (2024-11-25)
- Fixed bug in
ellipse.axes()re center/centre -
ellipse.axes()gains atypeargument to draw lines or arrows -
ellipse.axes()gains aextendargument to extend/shrink the axes
Version 1.7.1 (2024-11-14)
CRAN release: 2024-11-24
This is a modest update, adding two new datasets for simple examples and a PDF vignette
- Extended the “datasets” vignette with further description of how this was done.
- Added
dogfoodandoraldatasets, both simple MANOVA examples. - Added HE Plots for Repeated Measures Designs vignette
- Fixed nits from URLs vanished or moved
Version 1.7.0 (2024-05-01)
CRAN release: 2024-05-02
This is a semi-major release, primarily documenting all datasets in the package with @concept tags. It also adds new datasets and fixes bugs and documentation errors since the last CRAN release (v 1.6.2)
- Added a new example (
AddHealthdata) to theHE_manovavignette - Added
Overdosedata, a simple MMRA example. - All datasets now classified by
@concepttags in documentation, giving the primary methods (“MANOVA”, “MMRA”, “repeated”, …) that they illustrate. These supplement@keywordtags and appear in the index of the package documentation. - A new vignette (
datasets) lists the datasets in the package, classified by these@concepttags.
Version 1.6.2 (2024-02-14)
CRAN release: 2024-02-15
- Add
pengdataset, a version ofpalmerpenguins::penguins - Correct documentation problems from Roxygen 7.3.1 (@docType)
Version 1.6.1 (2023-12-05)
- add warning to label.ellipse() if length(label.pos) > 1
- fixed label.pos in
coefplot.mlm() - add
ellipse.axes()to draw axes of a covariance ellipse - add
ellipse.box()to draw conjugate axes of a covariance ellipse
Version 1.6.0 (2023-08-30)
CRAN release: 2023-09-05
- converted pkg to roxygen documentation
- now Suggests: car rather than Depends:
- fix CITATION authors
Version 1.5.0 (2023-05-30)
-
covEllipses()gains a formula method - Internal function
ellipsoid()used inheplot3d()becomes an (experimental) exported function,Ellipsoid()
Version 1.4-3 (2023-01-02)
- replace rgl.pop() with pop3D (PR #7); thx: D. Murdoch
Version 1.4-1 (2022-10-01)
CRAN release: 2022-10-01
- (Ugh) broom becomes a Depend: so as not to override
broom::glance()
Version 1.4-0 (2022-09-26)
- Added Iwasaki_Big_Five data [Thx: James Grice]
- Added
cex.labelarg toheplot3d() - Convert old Rnw vignettes to Rmd
- Fix documentation infelicities
- Added TIPI data
- Added
glance.mlm()as an extension ofbroom::glance.lm()
Version 1.3-9 (2021-10-06)
CRAN release: 2021-10-06
- Fix potential problem with URL links to JSS articles, now converted to DOIs
Version 1.3-6 (2019-03-26)
- add mathscore data
- fix bug in
etasq.lm()per #1 [thx: Phil Chalmers] - bump pkg version
- remove Suggests: FRB
Version 1.3-5 (2018-04-02)
CRAN release: 2018-04-03
- fix references to car datasets -> carData
- fix error resulting from car 3.0 changes
- bump pkg version
Version 1.3-4 (2016-11-7)
CRAN release: 2017-09-15
- Added Diabetes data, a nice example of heterogeneity of covariances
Version 1.3-3 (2016-10-21)
CRAN release: 2016-10-21
- Added Parenting data, a simple one-way MANOVA design (used in TQMP paper)
- Prepare for CRAN release
Version 1.3-1 (2016-06-10)
CRAN release: 2016-06-14
- added
plot.robmlm(), a plot method for “robmlm” objects. Currently, it plots the weights given to observations in the last iteration as an index plot. - Re-built vignettes
Version 1.3-0 (2016-06-03)
CRAN release: 2016-06-04
- In cqplot, pch, col, and cex can now be vectors
- Bump version, prepare for release
Version 1.2-1 (2016-05-19)
- in
coefplot.mlm(), now passlabel.posto label.ellipse() - added
Mahalanobis()for classical and robust squared distances; handles missing data gracefully and provides a confidence envelope - added SocialCog data [Thx: Leah Hartman]
- added
cqplot()of Mahalanobis distances as a plot method for an mlm and for multivariate data
Version 1.2-0 (2016-04-27)
CRAN release: 2016-05-19
-
covEllipses()extended to more than two variables, giving a scatterplot matrix plot - plot.boxM() now can plot other measures of the eigenvalues of the covariance matrices, useful for understanding the properties of the test.
- added
bartlettTests()for a collection of univariate Bartlett tests - added
leveneTests()for a collection of univariate Levene tests - added NeuroCog data, a simple one-way MANOVA [Thx: Leah Hartman]
- label.ellipse() now uses a much more flexible
label.posargument for positioning the text labels used inheplot()and friends.
Version 1.1-0 (2016-03-03)
CRAN release: 2016-03-26
- Added boXM from biotools
- Fleshed out
boxM()with formula, lm, plot and summary methods - added plot.boxM() method
- Added
covEllipses()methods for plotting (possibly robust) covariance ellipses - Added colDevs() as a utility and for use in other multivariate tests.
- Added data(AddHealth), a simple example of a one-way MANOVA with nice views [thx: Russell Warne]
- summary.boxM() now returns the calculated statistics and can be used to construct other kinds of plots.
- plot.boxM() gets a gplabel argument to provide a label for the group factor
- pairs.mlm() gets a var.cex argument to control size of variable labels
- Added logdetCI() for confidence intervals on log determinants of covariance matrices (experimental)
- Now use logdetCI() in plot.boxM()
Version 1.0-14 (2015-02-15)
- Updated broken urls in documentation
- Removed vcov.mlm from exports to conform to CRAN policies
- Now use rgl:: for rgl functions in *3d.R
- Removed robmlm.default, robmlm.formula from exports
- Imports: rgl
Version 1.0-12 (2014-05-15)
CRAN release: 2014-07-02
- Removed Authors: to satisfy CRAN nits
- Fixed doc for Hernior.Rd
- Now importsFrom(MASS) rather than Depends:
Version 1.0-11 (2013-08-20)
CRAN release: 2013-08-21
- Cosmetic changes to pass CRAN checks
- For R 3.1.0, revised vcov.mlm() to avoid calling summary.mlm() directly
- fixed long lines in .Rd files for R 3.0.1 checks
- removed require() calls for MASS & car (Depends:)
- removed ::: calls to car and stats
Version 1.0-9 (2013-04-19)
- Added Pottery2 data, extending car::Pottery
- Fixed heplot3d to minimize striated rendering of ellipsoids, and also modified default colors and fill.alpha
Version 1.0-8 (2013-02-22)
CRAN release: 2013-04-11
- In heplot.mlm(), added … to label.ellipse to be able to pass cex=
- Added NLSY data with examples of testing linearHypotheses
- In heplot3d(), rgl.* functions replaced with *3d() equivalents
- Extended gsorth description and examples
Version 1.0-7 (2013-02-07)
CRAN release: 2013-02-08
- Made some heplot3d() examples to reduce example execution time to satisfy CRAN nits
Version 1.0-6 (2013-01-14)
- Added label.ellipse() as a more general exported function.
- heplot() gets a label.pos= argument allowing more flexible labeling, with the label position to be specified (bottom, left, top, right or center)
- Added coefplot S3 generic and a coefplot.mlm method to plot ellipses for mlm coefficients. This generalizes car::confidenceEllipse to the mlm setting.
Version 1.0-4 (2012-12-29)
- Added interpPlot for plotting interpolations between two data sets, with data ellipses, etc. Main use for this is in animated demos of multivariate statistical concepts.
- interpPlot gains add=, points= and col= arguments for greater control of graphical parameters.
Version 1.0-2 (2012-12-05)
CRAN release: 2012-12-17
- Added Schooldata and further example of comparison of mlm with robmlm()
Version 1.0-1 (2012-10-18)
- Added simple robmlm methods for robust MLMss with print and summary methods and a vcov.mlm method. This allows heplot() and related methods to show robust HE plots.
Version 0.9-12 (2012-04-03)
CRAN release: 2012-05-17
- Added Skulls data
- Extended HE-examples vignette with example based on Skulls data
- Changed the default colors for heplot() and heplot1d() to allow global setting of options(“heplot.colors”); similarly, heplot3d() now allows a global option for colors, options(“heplot3d.colors”), differing only in using pink for error ellipsoid.
- Extended Hernior.Rd examples to show 1D plots in canonical space; added a discussion of this example to HE-examples vignette.
- Extended SocGrades.Rd examples to show plots in canonical space.
Version 0.9-11 (2012-01-12)
CRAN release: 2012-02-12
- Added Probe1, Probe2 data sets– repeated measures design
- Added Sake data
Version 0.9-10 (2011-09-12)
CRAN release: 2011-10-17
- Fixed Authors@R in DESCRIPTION for R 2.14.x
- Added var.labels argument to pairs.mlm
- gsorth.R: Made sd() a local function to avoid deprecated warnings
Version 0.9-9 (2011-06-10)
- Added data(Hernior), another MMRA, cancorr example data set
- Added data(SocGrades), another MANOVA, MMRA, cancorr example data set
- Corrected buglet with fill.alpha in heplot
Version 0.9-8 (2011-04-8)
CRAN release: 2011-05-21
- Added an MMRA example to HE-examples vignette
- Added err.label argument to heplot and heplot3d to allow changing the label for the error ellipsoid
Version 0.9-7 (2010-11-4)
o Added trans.colors() to make colors transparent o Modifications to heplot() for filled ellipses: added fill= and fill.alpha= arguments; replaced lines() with polygon() for H and E ellipses; calculate H.rank to distinguish degenerate ellipses o added last() to utility.R o Modified some examples to show fill=TRUE and use wire=FALSE in heplot3d() o Modified pairs.mlm() to pass fill= and fill.alpha= to heplot() o Updated reference URLs to point to datavis.ca o Fixed buglet in gsorth when matrix has no row/col names [Thx: mekki@mektek.ca] o Fixed buglet in etasq.lm with partial=FALSE [Thx: i.e.holliday@aston.ac.uk]
Version 0.9-6 (2010-11-2) o added CITATION to JSS article and references to .Rd files o modified repeated vignette to [nojss]
Version 0.9-5 (2010-10-01) o Added repeated vignette
Version 0.9-4 (2010-07-29) o Minor documentation changes o Added etasq.lm() method o Added data/MockJury - 1-way and 2-way MANOVA, step-down tests, ANCOVA o Generalized termMeans() and exported it o Added HE-examples vignette
Version 0.9-3 (2010-07-27) o Added gsorth() for Gram-Schmidt orthogonalization of a matrix or data frame, preserving column means and standard deviations o Avoid Deprecated warnings (linear.hypothesis) with car2 o Fixed documentation warnings with car2 (linear.hypothesis, data.ellipse)
Version 0.9-2 (2010-02-12) o Added demo/Big5.R - Analysis of scores on the ‘Big 5’ personality traits for three groups o fixed buglet with text3d causing rgl to crash (thx: Duncan Murdoch) o switched inst/CHANGES to NEWS o Added data/RatWeight and examples - repeated measures on Weight Gain in Rats o Added data/Headache and examples - repeated measures on treatment for headaches o Fixed buglets in heplot, heplot1d, heplot3d regarding number of variables o Added etasq.mlm methods for multivariate measures of association (^2) o Return ellipse radius from heplot, heplot3d
Version 0.9-1 (2010-01-1)
o heplot.mlm, pairs.mlm, heplot3d.mlm now work for repeated measure designs with only covariates on the rhs. o Implemented heplot1d() for repeated measures designs (untested) o Revised documentation for repeated measures o Added center.cex to heplot.mlm() o Revised mark.H0() to handle 3D plots also o Added Adoption data – MMreg with repeated measures o Added ReactTime data – 2 within-S, no between-S factors o Fixed bug with icontrasts o Added markH0 argument to heplot o Added label argument to mark.H0() o Added arrow3d() o Fixed buglet in pairs.mlm (type)
Version 0.9-0 (2009-12-25)
o Implemented 2D HE plots in heplot.mlm for repeated measures designs by adding idata=, idesign=, icontrasts= arguments.
o imatrix= argument for doubly-multivariate designs implemented, but depends on car 2.0+ o Updated example(OBK) o Updated example(WeightLoss) o Implemented 3D HE plots in heplot3d.mlm for repeated measures designs (OK) o Implemented pairs() for repeated measures designs (OK)
Version 0.8-11 (2009-12-08)
CRAN release: 2009-12-23
o Minor fixes to heplot1d o Added contrasts example to RootStock.Rd o Added WeightLoss data – doubly multivariate o Added mark.H0
Version 0.8-9 (2009-06-19)
CRAN release: 2009-07-23
o Added data(RootStock) o heplot.mlm, heplot3d.mlm now include center in the returned object
Version 0.8-8 (2009-06-04)
o Added data(FootHead) o Extended example(FootHead)
Version 0.8-7 (2009-04-17) o Initial version of heplot1d o Added data(Bees), demo(bees.contrasts) o Now suggest: effects package
Version 0.8-6 (2009-04-11)
CRAN release: 2009-04-19
o Added VocabGrowth data, with an example of heplot() for a repeated measures design o Fixed label.ellipse in heplot.mlm.R to center the label horizontally o Added demo(OBK) o Added axes= to heplot.mlm to fix warnings arising from axes=FALSE in pairs.mlm
Version 0.8-5 (2009-01-26)
CRAN release: 2009-04-03
o Minor documentation changes for Rdoc 2 o Michael Friendly as maintainer
Version 0.8-2 (2008-10-22)
Package changes o added suggests: candisc o added utility.R, cross3d.R
Changes to heplot.mlm: o moved lambda.crit to utility.R o added he.rep to handle common task of repeating HE argument values
Changes to heplot3d.mlm: o added shade=, shade.alpha=, wire= parameters o fixed: grand.mean=FALSE not respected o replaced sphere at grand.mean with cross3d() o color means according to the color of the term o return bounding boxes of the ellipsoids o replaced rgl.texts with texts3d
Changes to utility.R: o Generalized lambda.crit to provide Roy.crit and HLT.crit; only Roy.crit is used
