Version 2.0.0-3
-----------------------------------------------------------------------------
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 axes 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.
