Skip to content
Open
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions R/plot.parameters_model.R
Original file line number Diff line number Diff line change
Expand Up @@ -410,12 +410,12 @@ plot.see_parameters_model <- function(
if (isTRUE(sort) || (!is.null(sort) && sort == "ascending")) {
x$Parameter <- factor(
x$Parameter,
levels = rev(unique(x$Parameter)[order(x$Coefficient)])
levels = unique(x$Parameter)[order(x$Coefficient)]
)
} else if (!is.null(sort) && sort == "descending") {
x$Parameter <- factor(
x$Parameter,
levels = unique(x$Parameter)[order(x$Coefficient)]
levels = rev(unique(x$Parameter)[order(x$Coefficient)])
)
} else {
# sort coefficients as they appear in the classical summary output by default
Expand Down Expand Up @@ -807,10 +807,10 @@ plot.see_parameters_model <- function(
if (isTRUE(sort) || (!is.null(sort) && sort == "ascending")) {
x$Level <- factor(
x$Level,
levels = rev(unique(x$Level)[order(x$Coefficient)])
levels = unique(x$Level)[order(x$Coefficient)]
)
} else if (!is.null(sort) && sort == "descending") {
x$Level <- factor(x$Level, levels = unique(x$Level)[order(x$Coefficient)])
x$Level <- factor(x$Level, levels = rev(unique(x$Level)[order(x$Coefficient)]))
} else {
# sort coefficients as they appear in the classical summary output by default
x$Level <- factor(x$Level, levels = rev(unique(x$Level)))
Expand Down
32 changes: 32 additions & 0 deletions tests/testthat/test-plot.parameters_model.R
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,38 @@ test_that("`plot.see_parameters_model()` works", {
})


test_that("`plot.see_parameters_model()` sort parameter works for fixed effects", {
m <- lm(mpg ~ wt + cyl + gear + disp, data = mtcars)
result <- parameters::model_parameters(m)

# Test sort = TRUE (should be same as ascending)
p1 <- plot(result, sort = TRUE)
expect_s3_class(p1, "gg")

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[air] reported by reviewdog 🐶

Suggested change

# Test sort = "ascending"
p2 <- plot(result, sort = "ascending")
expect_s3_class(p2, "gg")

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[air] reported by reviewdog 🐶

Suggested change

# Test sort = "descending"
p3 <- plot(result, sort = "descending")
expect_s3_class(p3, "gg")

# Test with labels
p4 <- plot(result, sort = "ascending", show_labels = TRUE)
expect_s3_class(p4, "gg")

vdiffr::expect_doppelganger(
title = "plot.model_parameters_sort_ascending",
fig = plot(result, sort = "ascending", show_labels = TRUE)
)

vdiffr::expect_doppelganger(
title = "plot.model_parameters_sort_descending",
fig = plot(result, sort = "descending", show_labels = TRUE)
)
})


test_that("`plot.see_parameters_model()` errors for anova tables", {
skip_if_not_installed("parameters")
data(iris)
Expand Down