https://github.com/cran/sjPlot
Raw File
Tip revision: 01a8850ec45ac0f48f2b4fad6d22cf7b88ac0df0 authored by Daniel Lüdecke on 23 August 2017, 07:16:47 UTC
version 2.3.3
Tip revision: 01a8850
NEWS
Version 2.3.3
-----------------------------------------------------------------------------
General:
* Fixed issue with latest tidyr-update on CRAN.
* HTML-tables (`sjt.*`-functions) displayed in the viewer pane now automatically add a CSS-style for white page background. This fixes an RStudio issue on OS X, where the new look'n'feel used dark backgrounds in the viewer pane, making output hardly readable.

Version 2.3.2
-----------------------------------------------------------------------------
General:
* Revising package code from scratch. Part of the old functions will be replaced by new ones, making the code base easier to maintain and reduce redundant functions by merging them together. In the course of the next updates, functions will first become deprecated and later defunct.
* Changed imports to avoid using deprecated functions.
* Use more informative warning- and error-messages for certain functions.

New functions:
* `plot_models()` as replacement for `sjp.lmm()` and `sjp.glmm()` (which are now deprecated).
* `sjp.fa()` and `sjt.fa()` to plot or print as table the results of factor analyses.

Bug fixes:
* The mean and standard deviation in the summary of `sjt.frq()` were not correctly computed, when `auto.group`-argument was specified. This bug was introduced in the last update and is not fixed again.
* Values of character vectors were not always correctly sorted in `view_df()` (if `show.frq = TRUE`).

Version 2.3.1
-----------------------------------------------------------------------------
General:
* All `sjt`-functions can now be directly integrated into knitr-code-chunks, because sjPlot exports a knitr-print-method (see `vignette("sjtbasic", "sjPlot")`).
* `sjtab()` now also works within knitr-documents (see `vignette("sjtbasic", "sjPlot")`).
* Updated Namespace for functions that moved from package 'sjstats' to 'sjmisc'.

Changes to functions:
* Changed defaults for `save_plot()`.
* `save_plot()` now also supports _svg_-format.
* For effect-plots (`type = "eff"`), the `axis.title`-argument can now be used to change the title of y-axes.
* For `sjp.lm()`, `sjp.glm()`, `sjp.lmer()` and `sjp.glmer()`, if color palette has more values than needed, it is silently shortend to the required length.
* When plotting mixed models, argument `geom.colors` now also applies to plot-type `type = "ri.slope"`.
* Default correlation-method for `sjt.corr()` and `sjp.corr()` is now `pearson`.
* Argument `emph.p` for printing tables of regression models now defaults to `FALSE`.

Bug fixes:
* Fixed bug in `sjt.frq()` for variables with many missing values and labelled values that did not occur on that variable.
* Argument `value.labels` had no effect for `sjt.frq()`.
* Automatic label detection in `sjt.grpmean()` sometimes not worked for factors without variable labels.
* `sjp.glm()` used "Odds Ratios" as default title for y-axis when plotting marginal effects. Fixed, now y-axis is correctly labelled.
* `sjt.glm()` used "Odds Ratios" as default column heading for the estimates, even for poisson or other models. Now the string for column headers is selected based on the first model input of the function.
* Solved issue with warning in prediction-plots (`type = "pred"`) for categorical variables on the x-axis.

Version 2.3.0
-----------------------------------------------------------------------------
General:
* Vignettes were added to this package.

Changes to functions:
* You can use `geom.colors = "bw"` for linetype-plots, to create black & white figures that use different linetypes instead of different colors.
* `sjp.kfold_cv()` now also supports poisson and negative binomial regression models.
* `sjp.pca()` and `sjt.pca()` get a `rotation`-argument, to use either varimax- or oblimin-transformation of factor loadings.
* Argument `show.value` now also applies to bar plots in `sjp.pca()`.
* `sjt.glm()`, for generalized linar (mixed) models, now shows adjusted standard errors, using the Taylor series-based delta method.
* More precise rounding of percentage values in `sjt.xtab()`, `sjp.xtab()` and `sjp.grpfrq()`.
* Cramer's V in `sjt.xtab()` is now dentoted as V.
* `sjt.xtab()` gets a `...`-argument, to pass down further arguments to the test statistics functions `chisq.test()` and `fisher.test()`.
* `sjt.xtab()` gets a `statistics`-argument, to select one of different measures of associations for the table summary.

Bug fixes:
* Plotting or table output of regression models did not work with null-models (i.e. with intercept only).

Version 2.2.1
-----------------------------------------------------------------------------
Changes to functions:
* `sjp.lm()` for `type = "ma"` now uses subtitles in multi-line plot-titles.

Bug fixes:
* Residuals in `sjp.kfold_cv()` had wrong leading sign (i.e. positive residuals were negative and vice versa).

Version 2.2.0
-----------------------------------------------------------------------------
New Functions:
* `sjp.kfold_cv()` to plot model fit from k-fold cross-validation.

Changes to functions:
* Argument `scatter.plot` was renamed to `show.scatter`.
* Argument `var.labels` in `sjt.frq()` was renamed to `title`.
* `sjplot()` and `sjtab()` also accept grouped data frames, to create plots or tables for all subgroups.
* For `sjp.glm()` and `sjp.glmer()`, `type = "pred"`, `type = "slope"`, `type = "pred.fe"` and `type = "fe.slope"` can now also plot data points when `show.scatter = TRUE`. Use `point.alpha` to adjust alpha-level of data points.
* For `sjp.glm()` and `sjp.glmer()`, `type = "pred"` and `type = "pred.fe"` now accept three variables for the `vars`-argument, to facet grouped predictions by a third variable.
* For `sjp.lm()`, `sjp.lmer()`, `sjp.glm()` and `sjp.glmer()`, `type = "pred"` and `type = "pred.fe"` now plot error bars for `show.ci = TRUE` and a discrete variable on the x-axis.
* For `sjp.lm()`, `sjp.lmer()`, `sjp.glm()` and `sjp.glmer()`, the `...`-ellipses argument now is also passed down to all errorbars- and smooth-geoms in prediction- and effect-plots, so you can now use the `width`-argument to show the small stripes at the lower/upper end of the error bars, the `alpha`-argument to define alpha-level or the `level`-argument to define the level of confidence bands.
* `sjp.lm()`, `sjp.lmer()`, `sjp.glm()` and `sjp.glmer()` get a `point.color`-argument, do define color of point-geoms when `show.scatter = TRUE`. If not defined, point-geoms will have same group-color as lines.
* Effect-plots (`type = "eff"`) now plot data points for discrete variables on the x-axis.
* `sjt.lm()` and `sjt.glm()` get a `robust`-argument to compute robust standard errors and confidence intervals.
* `sjp.resid()` now also returns a plot with the residual pattern, `$pattern`.
* Plot and axis titles from effect-plots can now be changed with `title` or `axis.title` argument. Use a character vector of length > 1 to define (axis) titles for each plot or facet; use `""` to remove the title.
* Pick better defaults for `geom.size`-argument for histogram and density plots in `sjp.frq()`.
* Improved automatic label detection for regression models for plot or table output.

Bug fixes:
* Restored correct order of categories in `sjp.xtab()` and `sjp.grpfrq()` for stacked bars (`position_stack()` reversed order since  last ggplot2-update), so labels are now correclty positioned again.
* Restored correct order of categories in `sjp.likert()`, so groups are now in correct order again.
* Fixed bug in `sjt.grpmean()` for variables with unused value labels (values that were labelled, but did not appear on the vector).
* Fixed wrong documentation for `show.summary`-argument in `sjt.xtab()`.
* `sjt.frq()` and `sjp.frq()` showed messed up labels when a labelled vector had both `NA` values and `NaN` or infinite values.
* `sjtab()` did not create tables for `fun = "xtab"` with additional arguments.

Version 2.1.2
-----------------------------------------------------------------------------
General:
* Effect-plots from `sjp.int()`, `sjp.glm()` and `sjp.glmer()` now support the `transformation`-argument from the 'effects'-package. For example, when calling `sjp.glm(fit, type = "eff", transformation = NULL)`, predictions are on their original scale (y-scale) and the title for the y-scale is changed accordingly.

Changes to functions:
* Restored order of categories in `sjp.stackfrq()`, which were reversed by the last ggplot2-update, where `position_stack()` now sorts the stacking order to match grouping order.

Bug fixes:
* Fixed bug in `sjplot()` that caused figures not being plotted in certain situations.
* Fixed bug in `sjp.lmm()`, which caused an error for plotting multiple mixed models when Intercept was hidden.
* Fixed bug in `sjp.lmm()`, which caused an error for plotting multiple mixed models when `type = "std"` or `type = "std2"`.

Version 2.1.1
-----------------------------------------------------------------------------
General:
* Some fixes needed to be compatible with the latest ggplot2-update.

New functions:
* `sjplot`, a pipe-friendly wrapper for some of this package's plotting-functions.
* `sjtab`, a pipe-friendly wrapper for some of this package's table-functions.

Version 2.1.0
-----------------------------------------------------------------------------
New functions:
* `sjp.resid`, an experimental function to plot and analyze residuals from linear models.
* `plot_grid` to plot a list of ggplot-objects as arranged grid in a single plot.
* `set_theme` to use a preset of default themes for plots from the sjp-functions.

Changes to functions:
* For `sjp.glmer` and `sjp.lmer`, argument `show.ci` now also applies for plotting random effects (`type = "re"`, the default), so confidence intervals may not be calculated. This may be useful in some cases where computation of standard errors for random effects caused an error.
* Effect plots (`type = "eff"`) for `sjp.lm`, `sjp.glm`, `sjp.lmer` and `sjp.glmer` should now better handle categorical variables and their labels, including using error bars insted of regions for confidence intervals.
* `table(*, exclude = NULL)` was changed to `table(*, useNA = "always")`, because of planned changes in upcoming R version 3.4.
* `get_option("p_zero")` was removed, and `sjt.lm`, `sjt.glm`, `sjt.lmer` and `sjt.glmer` get a `p.zero` argument.
* `sjp.setTheme` no longer sets default theme presets for plots; use `set_theme` instead.

Bug fixes:
* A bug introduced in update 2.0.2 caused an error in `sjp.lm` for `type = "std"`.
* Effect plots (`type = "eff"`) for `sjp.lm`, `sjp.glm`, `sjp.lmer` and `sjp.glmer` did not plot all predictors, when predictor name was not exactly specified in formula, but transformed inside formula (e.g. `log(pred + 1)`).


Version 2.0.2
-----------------------------------------------------------------------------
General:
* Replace deprecated `dplyr::add_rownames()` with `tibble::rownames_to_column()`.
* Improved title labelling for `type = "pred"` in `sjp.lm`, `sjp.glm`, `sjp.lmer` and `sjp.glmer`.
* Improved title and facet title labelling for `type = "eff"` in `sjp.lm`, `sjp.glm`, `sjp.lmer` and `sjp.glmer`.

Changes to functions:
* Added argument `theme.font` to `sjp.setTheme` to apply a base font family for themes.
* `sjp.lmer` gets a new plot type `eff.ri` to plot marginal effects, varying by random intercepts.

Bug fixes:
* In some cases, `sjp.int` cropped parts of the plot, when `jitter.ci` was `TRUE`.
* In `sjp.corr`, argument `sort.corr = FALSE` caused an error.
* In `sjt.glm` and `sjt.glmer`, setting argument `sep.column` to `FALSE` still added separator columns at the right end of the table.
* `sjp.xtab` caused an error when a value from `x` was completely missing in `grp` (or vice versa).


Version 2.0.1
-----------------------------------------------------------------------------
General:
* `sjt.lmer` and `sjt.glmer` now warn when `show.aic = TRUE` and models were fitted with REML instead of ML.
* Better support for `plm` objects in `sjt.lm`, `sjp.lm` and `sjp.int`.

Changes to functions:
* Added `group.estimate` argument to `sjp.lmer` and `sjp.glmer` (for fixed effetcs only).
* `sjt.frq`, `sjt.xtab` and `view_df` now show notes (`note`-attribute, see `sjmisc::set_note`) of labelled data as tooltip, when mouse hovers the variable name/label, in the HTML-output.
* `axis.title` argument for `sjp.glmer` and `sjp.lmer` can now be a vector of length one or two, to be more flexible with axis titles for the various plot types.
* `sjt.lm`, `sjt.glm`, `sjt.lmer` and `sjt.glmer` get a `sep.column` argument to add (default) or remove a separator column (i.e. margin) between model columns.
* `sjp.scatter` now uses value labels from grouping variable as title for plots if `facet.grid = TRUE`.
* Argument `axis.title` now also applies to `type = "pred"` for `sjp.lm`, `sjp.glm`, `sjp.lmer` and `sjp.glmer`.
* Argument `geom.colors` now applies to more plot types in `sjp.lm`, `sjp.glm`, `sjp.lmer` and `sjp.glmer`.
* Added argument `legend.title` to `sjp.lmer` and `sjp.glmer` to set legend title for those plot types who have legends.
* Added argument `jitter.ci` to `sjp.int` to add jittering to confidence bands for error bars, to avoid overlap.
* Added argument `string.total` to `sjt.stackfrq` to label the column with total N (see `show.total`).

Bug fixes:
* `axis.lim` was not recognized for non-binomial model families and linear models slope- and effect-plot-types.


Version 2.0.0
-----------------------------------------------------------------------------
Major changes:
* This package update includes a major revision of function arguments and their naming, in order to get a consistent argument pattern across all package functions. This means that your existing code, which uses **sjPlot**-package-functions, most likely needs adaptions to work again.
* Arguments were harmonized across all package functions. This includes refactoring of many function argument names, to get consistent argument names in functions (e.g. `sort.coef` now no longer exists, and was renamed to `sort.est`, which was already used by some other functions).
* Camel cased argument names were replaced by lowercase dot-separated names (e.g. `showCI` was renamed to `show.ci`) and harmonized bewteen different functions
* `type` arguments of `sjp.lm`, `sjp.glm`, `sjp.lmer` and `sjp.glmer` were harmonized, so that one type does the same in all functions. `"pred"` and `"fe.pred"` were renamed to `"slope"` and `"fe.slope"`, `"fe.ri"` and `"ri.pc"` were renamed to `"ri.slope"`, `"resp"` and `"y.pc"` were renamed to `"pred"` and `"pred.fe"`.
* Arguments in functions were re-ordered and bundled according to their functionality (e.g., the variuous `show...` arguments now should appear on after another in the function and package manual).

General:
* Improved label detection for `sjp.lm`, `sjp.glm`, `sjt.lm`, `sjt.glm`, `sjt.lmer` and `sjt.glmer`.
* Improved handling of different link functions for generalized linear (mixed) models (including negative binomial) for effect plots in `sjp.glmer` and `sjp.glm`.

Changes to functions:
* Effect plots (`type = "eff"`) for (generalized) linear (mixed) models (`sjp.lm`, `sjp.glm`, `sjp.lmer` and `sjp.glmer`) get a `vars` and `facet.grid` argument.
* Effect plots (`type = "eff"`) get a `...` argument, to pass down other arguments to the `effects`-package.
* Predicted values for response (`type = "pred"` or `type = "pred.re"`) for `sjp.glm`, `sjp.glmer`, `sjp.lm` and `sjp.lmer` get a `vars` argument to specify x-axis and optional grouping variables. Furthermore, models from other model families and link functions (including negative binomial) now also work with this plot type.
* Functions `sjp.lmer`, `sjp.glmer`, `sjt.lmer`, `sjt.glmer`, `sjp.lmm` and `sjp.glmm` get a `p.kr` argument, to decide whether computation of p-values should be based on Kenward-Roger approximation or not (for very large data sets, it's recommended to set this argument to `FALSE` because it is very time consuming).

Bug fixes:
* During code clean-up, argument `group.pred` did not work for `sjt`-functions in past update.
* Fixed bug with computation of confidence intervals and relative confidence intervals in `sjp.frq`.

Version 1.9.4
-----------------------------------------------------------------------------
General:
* Package is now depending on R >= 3.2, because some functions did not work on older R-releases.

Bug fixes:
* `type = "rs.ri"` for `sjp.lmer` and `sjp.glmer` did not work with three-level (or more) mixed models or with mixed models with more than one random part.


Version 1.9.3
-----------------------------------------------------------------------------
General:
* P-values for linear mixed models are now computed using conditional F-tests with Kenward-Roger approximation for the df from the 'pbkrtest' package, if available.

Changes to functions:
* Better support for different model families in `sjp.glm` and `sjp.glmer`.
* `sjt.lm`, `sjt.lmer`, `sjt.glm` and `sjt.glmer` get a `showDeviance` argument to display model's deviance in the table summary.
* `sjt.lmer` and `sjt.glmer` now show R2-values (based on sjmisc::r2 function).
* `sjt.lmer` and `sjt.glmer` get argument `showREvar` to show random effect variances.
* `sjt.df` gets a `...` argument to pass down other arguments to `psych::describe`.
* Argument `sample.n` in `sjp.lmer` and `sjp.glmer` may now also be a numeric vector of length > 1, indicating speficic random effects to select for plotting.
* Plot-type of `sjp.int` now defaults to `type = "eff"`.
* Minor improvements to `sjp.int` according to plot labels (legend, axis).

Bug fixes:
* `sjt.xtab` did not apply `highlightTotal` to total column.
* `sjt.xtab` showed wrong total percentages for row and column percentages.
* `geom.outline.color` and `geom.outline.size` did not apply to bar geoms after ggplot-update.


Version 1.9.2
-----------------------------------------------------------------------------
General:
* Updates package vignettes (http://strengejacke.de/sjPlot/) to work with the latest package versions.

Changes to functions:
* `sjp.lmm` and `sjp.glmm` now also support linear mixed effects models (of class `merMod`).
* `sjp.int` now uses proper x-axis-tick-labels for `type = "eff"`, when predictor on x-axis is a factor with non-numeric factor-levels (or has label attributes).
* `sjp.glm` gets a `group.estimates` argument to group estimates in forest plots and colour them according to group assignment. Use arguments `show.legend` and `legendTitle` to modify group legend.
* `sjp.poly` now has better variable label detection for automatic axis labelling.
* `sjp.lmer` and `sjp.glmer` now support model diagnostics with `type = "ma"`.
* Better support for different model families in `sjp.glm`.
* Better axis labelling for `type = "poly"` in `sjp.lm` and `sjp.lmer`.

Bug fixes:
* Fixed bug in `sjp.int`, where automatic y-axis-scaling for binary outcomes cut off parts of confidence region in some cases.
* Fixed bug in `sjp.lmer` and `sjp.glmer` with doubled y-axis for faceted random effect plots.
* `sjt.xtab` ignored value labels when weighting data.
* Fixed bug with position of value labels in `sjp.xtab`.
* Fixed bug in `sjp.likert` that plotted categories in wrong order when neutral category was lower than amount of categories.
* Fixed bug in `sjp.grpfrq` with argument `autoGroupAt`.
* Fixed minor bugs in `sjp.lm` with axis range for forest plots.
* Fixed bug in `sjp.stackfrq`, where the use of argument `showSeparatorLine` caused an error.


Version 1.9.1
-----------------------------------------------------------------------------
Changes to functions:
* Improved text label positioning for plotting functions.
* Plotting functions now get an argument `y.offset` to specify an offset for text labels from geoms.
* `sjp.lm` and `sjt.lm` now support `gls` models fitted with `nlme::gls`.
* `sjp.int` now fits the y-axis to the required range for predicted probabilities for logistic regressions instead of always using a range from 0 to 1, even for smaller effects.
* `sjp.glmer` and `sjp.lmer` get a `axisLimits.y` argument to specify y-axis limits specifically for predicted probability or effect plots.
* `view_df` now supports showing missings and missing percentages.
* Harmonized column names of returned data frames to match `broom`s naming convention for `sjp.lm`, `sjp.glm`, `sjp.lmer`, `sjp.glmer`, `sjp.lmm`, `sjp.glmm`, `sjp.aov1` and `sjp.int`.
* Functions with harmonized data frames as return value now also gain the class attribute `sjPlot`, and all returned data frame values are named `data`.
* `sjp.scatter` gets a `useCount` argument to indicate overplotting by point size.
* `sjp.scatter` now also plots data points when using argument `pointLabels`, so exact position of labelled data points is visible. `geom_text_repel` is used to avoid overlapping of points and labels.
* `sjt.xtab` gets a `title` argument to print a table caption.

Bug fixes:
* Automatic label detection did not choose column names when no variable labels were present for functions that accepted data frames as data argument, now works again.
* `sjp.int` did not work with fitted models from class `lme`, now works again.
* `sjt.xtab` did not show `NA` values for `showNA = TRUE`, now works again.
* `sjt.xtab` did not use arguments `valueLabels`, now works again.
* Table summary (chi-squared, phi, p) for `sjt.xtab` were wrong, now works again.
* Due to rounding, total percentage in `sjt.xtab` could differ from 100%.
* Minor fixes.


Version 1.9
-----------------------------------------------------------------------------
General:
* Fixed many issues related to the latest update of ggplot2.
* Argument `show.se` is now deprecated. Use `show.ci` instead.
* Redesign of computation of frequency tables for `sjp.frq` and `sjt.frq`, being more robust and generally working with labelled, non-labelled, numeric, character vectors and factors.
* Redesign of computation of frequency tables for `sjp.grpfrq`, `sjp.xtab` and `sjt.xtab`, being more robust and generally working with labelled, non-labelled, numeric, character vectors and factors.
* Better automatic handling of variable and value labels that are used for labelling plot axes and titles or table columns.

Changes to functions due to new ggplot2-version:
* `sjp.grpfrq` no longer has plot type `type = "histogram"`. Maybe re-implemented in a later update. Due to this change, arguments like `showMeanIntercept` and similar were removed.
* Plotting functions no longer have argument `labelPosition`. Instead, use arguments `vjust` and `hjust`, which correspond to the same ggplot2-aesthetics according to their possible values.

Changes to functions:
* `sjp.lm` gets a `group.estimates` argument to group estimates in forest plots and colour them according to group assignment. Use arguments `show.legend` and `legendTitle` to modify group legend.
* `sjp.lmer` and `sjp.glmer` can now plot random effect parts of random slope-intercept models (with `type = "rs.ri"`), where regression lines or predicted probabilities of random intercept and slopes are plotted.
* Intercept line plotting in `sjp.int` for `type = "cond"` was removed.
* Line geoms for `type = "cond"` in `sjp.int` now always start at y-position zero, to better indicate the effective change of interaction effect compared to base reference. Now, the y-position indicates the change in the reponse due to the interaction effect.
* `sjp.int` gets a `geom.size` argument to specify line width.

Bug fixes:
* Argument `ci.hyphen` in function `sjt.lm` and `sjt.lmer` was not correctly applied to confidence intervals of standardized beta values.


Version 1.8.4
-----------------------------------------------------------------------------
General:
* Improved encoding detection for `sjt`-functions.

Changes to functions:
* Predictor grouping with argument `group.pred` now also works for `sjt.lmer` and `sjt.glmer` (in certain cases may be buggy, so `group.pred` defaults to `FALSE`).
* Argument `vars` in `sjp.lmer` and `sjp.glmer` now also applies when plotting estimates (`type = "fe"` or `type = "re"`).
* `view_df` gets a `weightBy` argument.
* Argument `showCI` in `sjp.int` accepts numeric values for `type = "eff"`,  indicating the confidence interval value.
* Minor improvements to `view_df`, `sjp.lm` and `sjp.lmm`.
* Improved accuracy of computation of skewness value in `sjt.itemanalysis`.

Bug fixes:
* Fixed bug where in certain cases, ordered factors were not labelled correctly in `sjp.frq`.
* Value labels were not shown in `sjp.aov1`.
* Axis labels were reversed in `sjp.pca` for `type = "bar"`.

Version 1.8.3
-----------------------------------------------------------------------------
New functions:
* `sjp.gpt` to plot grouped proportional tables.
* `save_plot` as convenient function to save the last ggplot-figure in high quality for publication.

Changes to functions:
* `sjp.lmm` can now also plot standardized estimates.
* `sjp.lm`, `sjp.lmm` and `sjt.lm` can now plot standardized estimates, where standardization is computed following Gelman's approach by dividing estimates by two standard deviations.
* Added parameters `ci.hyphen` and `minus.sign` to `sjt.lm`, `sjt.glm`, `sjt.lmer` and `sjt.glmer` to set specific symbols or HTML entitities for hyphens and minus signs of negative numbers.
* Added `type = 'coeff'` to `sjp.lmer` to plot joint random and fixed effects coefficients.
* `sjp.lm`, `sjp.glm`, `sjp.lmm`, `sjp.glmm`, `sjp.lmer` and `sjp.glmer` get a `remove.estimates` argument to remove specific estimates from the plot output.
* `type = 'poly'` in `sjp.lm` can now deal with fitted models that either use polynomials with `poly` or splines with `bs`.
* `sjt.df` gets a `big.mark` parameter to add thousands-separators if parameter `describe = TRUE`.
* `sjt.df` and `view_df` now recognize Date and POSIX-classes, if `showType = TRUE`.
* `sjp.poly` now also returns cutpoints of loess curvature, to get maximum / minimum values of loess curvature.
* `sjp.lm` with `type = 'ma'` now also returns all plots as list of ggplot-objects.
* `sjp.setTheme` now allows for custom label and title colors when using pre-set-themes.
* Improved automatic y-axis-limit detection in `sjp.frq` and `sjp.grpfrq`.
* Minor improvements to `sjp.lmm` and `sjp.glmm`.

Bug fixes:
* Fixed bug in `sjp.lmer`, which misleadingly printed wrong beta coefficients (they were exponentiated as for odds ratios).
* Fixed bug with computation of predicted probabilities in `sjp.glm` and `sjp.glmer` (only occured when `type = 'y.pc'`).
* `sjp.grpfrq` did not show correct number of missings (argument `na.rm = FALSE`), if grouping variable startet with zero.
* Fixed bug with `sjp.frq` and `sjt.frq`, when variable was a labelled factor with lowest factor level smaller than 1.
* Fixed bug in `view_df` with parameter `showFreq = TRUE`, when variable was a character vector.
* Minor bug fixes with p-shapes in `sjp.lmm` and `sjp.glmm`.
* Fixed bug in `sjt`-table functions that occured with invalid multibyte strings.

Version 1.8.2
------------------------------------------------------------------------------
General:
* `view_spss` is now deprecated. Use `view_df` instead.
* Package documentation got major revisions.
* Updated namespaces to meet new CRAN namespace requirements.

New functions:
* `sjp.poly` to plot polynomial curves for (generalized) linear regressions.

Changes to functions:
* Model and table summaries in plotting functions (like `sjp.lm` or `sjp.grpfrq`) are no longer printed by default. Use `showTableSummary = TRUE` or `showModelSummary = TRUE` to print summaries in plots.
* Added more plotting type options (see `type` parameter) to `sjp.glm`, `sjp.glmer`, `sjp.lm` and `sjp.lmer`: `eff` for plotting marginal effects of model terms, and `poly` to plot predicted values of polynomial terms (only for linear (mixed) models).
* Added parameter `pointLabels` to `sjp.scatter` to plot scattered text labels.
* Added parameter `int.term` to `sjp.int`, to plot selected interaction terms for `type = 'eff'`. May be used in cases where effect computation takes too long or even crashes due to out-of-memory-problems.
* Added parameter `axisLimits.x` to `sjp.int`, `sjp.frq` and `sjp.grpfrq`.
* Added parameter `showAICc` to `sjt.lm`, `sjt.glm`, `sjt.lmer` and `sjt.glmer` to print second-order AIC.
* Improved automatic y-axis-limit detection in `sjp.frq` and `sjp.grpfrq`.
* For `sjt.lm` and `sjt.glm`, if `digits.p` is greater than 3, p-values less than 0.001 will no longer be abbreviated to `<0.001`. Instead, the exact value (rounded to digits.p) will be printed.
* Minor improvements to `sjp.likert`, `sjp.int`, `sjp.glm`, `sjp.frq` and `sjp.grpfrq`.

Bug fixes:
* `sjp.int` sometimes crashed with mixed models, due to slow Kenward-Roger-computation of standard errors, provided by the `effects`-package. Fixed, `KR`-parameter, when calling `allEffects`, now defaults to `FALSE`.
* Fixed bug in `view_spss`, where frequencies were not displayed correctly when a category value had zero counts.
* Fixed bug in `sjp.frq` and `sjt.frq`, where non-incremental levels in some cases were not displayed correctly.
* Fixed bug in `sjp.frq` and `sjt.frq`, where categories of ordered factors were messed up.
* Some minor bug fixes.

Version 1.8.1
------------------------------------------------------------------------------
General:
* Deprecated function `sjp.emm.int` was removed. Use `sjp.int` with parameter `type = 'emm'` to plot estimated marginal means.
* Minor improvements for `sjt.lm` and `sjt.glm`.

New functions:
* `sjt.lmer` to print summary tables of linear mixed models.
* `sjt.glmer` to print summary tables of generalized linear mixed models.

Changes to functions:
* Added 'type = `probc`' to `sjp.glm` as alternative to 'type = `prob`'. 'type = `probc`' calculates predicted probabilities based on the `predict` function.
* Added 'type = `y.prob`' to `sjp.glm` and `sjp.glmer` to plot predicted probabilities of the response.
* Added 'type = `resp`' to `sjp.lm` and to `sjp.lmer` to plot predicted values of the response.
* `sjt.grpmean` gets a `weightBy` parameter to compute weighted group-means.
* `sjt.glm` gets a `showHosLem` parameter to print results of the Hosmer-Lemeshow-Goodness-of-fit-Test for generalized linear models.
* Added white-background-alternative-themes of 538, 539 and scatter to `sjp.setTheme`.
* `sjt.frq` now warns when a variable has less labels than unique values.
* `sjp.int` for `type = 'emm'` now warns if interaction terms are not factors.

Bug fixes:
* Fixed bug with `options(p_zero = TRUE)`, where leading zero was inserted after, instead of before decimal point.
* Fixed formatting bug for pseudo-R2 in `sjt.glm`.
* Fixed bug in `sjp.likert` when data frame had only one column.
* Fixed bug in `sjt.frq` when a data frame contained variables with only NA values.
* Fixed bugs in `sjt.frq` with weighted variables.
* Fixed wrong warning message, saying that package `lme4` is missing (should be package `arm` instead).


Version 1.8
------------------------------------------------------------------------------
General:
* Utility, recode and statistical test functions have been moved to another package called `sjmisc`! sjPlot now imports sjmisc.
* R-Version dependency changed to R >= 3.1, due to import of `tidyr` and `dplyr` packages.
* `sjp.emm.int` is now deprecated. Use `sjp.int` with parameter `type = 'emm'` to plot estimated marginal means. Estimated marginal means can now also be applied to lmerMod-objects from lme4-package.

New functions:
* `sjt.mwu` to print Mann-Whitney-tests as HTML-table.

Changes to function 'sjp.int':
* `sjp.int` now supports `plm` objects (from plm-package).
* Added parameter `type` to `sjp.int` to plot different types of interactions, including estimated marginal means.
* Added parameter `legendTitle` to `sjp.int`.
* Added parameter `int.plot.index` to `sjp.int`, so only selected interaction terms may be plotted.
* Added parameter `showCI` to `sjp.int` (only for type = `emm` and `eff`) to add confidence intervals to estimated marginal means.
* Added parameter `facet.grid` to `sjp.int` to plot each effect in a separate plot.
* Parameter `legendLabels` of `sjp.int` now accepts a list of character vectors, with one vector of legend labels for each interaction plot plotted.
* Parameter `title` of `sjp.int` now accepts a character vector of same length as interaction terms, with one title character string for each interaction plot plotted.
* Parameter `moderatorValues` in `sjp.int` has two new options `zeromax` and `quart` for chosing the moderator values.

Changes to other functions:
* Linear mixed model methods (`sjp.int`, `sjp.lmer`) can now cope with `modMerLmerTest` objects (fitted with `lmerTest` package)
* `sjp.lmer` now calculates approximate p-values based on Wald chi-squared tests.
* `sjp.lmer` and `sjp.glmer` now plot all random effects (when type = `re`) by default, instead of only the first random effect. Furthermore, parameter `ri.nr` now may be a numeric vector (instead of single numeric value) with several random effect index numbers.
* `sjp.glm` now supports plotting `logistf` objects.
* `sjp.glmm` and `sjp.lmm` now also accept a list of fitted models (see examples in ?sjp.glmm and ?sjp.lmm).
* `sjp.int` and `sjp.lm` now support `plm` objects (from plm-package).
* Parameters `orderBy` and `reverseOrder` in `sjp.stackfrq` and `sjt.stackfrq` were merged into new parameter `sort.frq`.
* Parameter `transformTicks` in `sjp.glm` and `sjp.glmm` now defaults to `TRUE`.
* Added parameter `emph.grp` to `sjp.lmer` and `sjp.glmer` to emphasize specific grouping levels when plot-type is either `fe.ri` or `ri.pc`.
* Added parameter `labelDigits` to functions `sjp.likert` and `sjp.stackfrq`, so digits of value labels can be changed.
* Added option `fe.pred` to `type`-parameter of `sjp.lmer` to plot slopes for each single fixed effect.
* Added parameter `bar` to `sjp.pca` to plot loadings of principle components as bar charts.
* Renamed parameters `y` and `x` in `sjp.xtab` into `var` and `grp`.
* Added further pre-set themes to `sjp.setTheme`.
* Minor improvements of `sjp.setTheme`.

Bug fixes:
* `sjp.int` did not work for interaction terms of factors with more than two levels in mixed effects models (`merMod`-objects) - fixed.
* `sjp.glm` and `sjp.glmm` should catch axis limits, which are out of printable bounds, hence these function should no longer stop in such cases.
* `sjp.lmer` and `sjp.glmer` wrongly stated that paramter `ri.nr` was out of bound when `type` was `re`, `fe.ri` or `ri.pc` - fixed.
* Weights with decimals in `sjt.xtab` (e.g. `weightBy = abs(rnorm(100, 2, 1)`) caused an error - fixed.
* `sjp.int` did not work with interaction terms that used `AsIs` conversion (function `I`) - fixed.
back to top