# testing of multiple variables
cas5k <- iNZightMR::census.at.school.5000
test_that("Basic multi-variable plots work", {
expect_s3_class(
suppressWarnings(
inzplot(~ techtv + techmp3 + techinternet + techmobinternet + techfacebook +
techtwitter + techbebo + techmyspace + techskype + technone, data = cas5k)
),
"gg_multi_binary"
)
expect_s3_class(
suppressWarnings(
inzplot(~ techtv + techmp3 + techinternet + techmobinternet + techfacebook +
techtwitter + techbebo + techmyspace + techskype + technone,
data = cas5k,
keep_missing = TRUE
)
),
"gg_multi_stack"
)
expect_s3_class(
inzplot(~ techtv + techmp3 + techinternet + techmobinternet + techfacebook +
techtwitter + techbebo + techmyspace + techskype + technone,
data = cas5k,
g1 = importenergy
),
"gg_multi_binary"
)
expect_s3_class(
inzplot(~ techtv + techmp3 + techinternet + techmobinternet + techfacebook +
techtwitter + techbebo + techmyspace + techskype + technone,
data = cas5k,
g1 = gender, g1.level = "female"
),
"gg_multi_binary"
)
cas5k2 <- cas5k
attr(cas5k2$techmp3, "table") <- "one"
attr(cas5k2$techinternet, "table") <- "one"
attr(cas5k2$techskype, "table") <- "two"
attr(cas5k2$techfacebook, "table") <- "two"
expect_s3_class(
inzplot(~ techmp3 + techinternet + techfacebook + techskype, data = cas5k2),
"gg_multi_binary"
)
expect_s3_class(
inzplot(~ country_en + country_mi,
data = cas5k2,
outcome_value = "NZL"
),
"gg_multi_binary"
)
})
test_that("Multi-variable summaries work", {
expect_s3_class(
inzsummary(~ techtv + techmp3 + techinternet, data = cas5k),
"knitr_kable"
)
})
test_that("Non-cat vars are removed is option set", {
expect_error(
inzsummary(~ techtv + techmp3 + techinternet + height, data = cas5k)
)
op <- options(inzight.auto.remove.noncatvars = TRUE)
on.exit(options(op))
expect_warning(
inzsummary(~ techtv + techmp3 + techinternet + height, data = cas5k)
)
})
skip("Remaining testing needs to be completed")
dd <- data.frame(
q1 = sample(c("never", "sometimes", "often", "always", "don't know"), 100, replace = TRUE),
q2 = sample(c("never", "sometimes", "often", "always", "don't know"), 100, replace = TRUE),
stringsAsFactors = TRUE
)
inzplot(~ q1 + q2, data = dd)
inzplot(~ q1 + q2, data = dd, plottype = "gg_multi_col")
cas_raw <- iNZightTools::smart_read("cas500_coded.csv")
cas_dict <- iNZightTools::read_dictionary("casdict.csv",
name = "variable",
title = "friendly_name"
)
cas <- iNZightTools::apply_dictionary(cas_raw, cas_dict)
levels(cas$getlunch) <- levels(cas$travel)
for (c in c("bike", "bus", "motor", "other", "train", "walk")) {
cas[[c]] <- expss::set_var_lab(
ifelse(cas$travel == c, "yes", "no"),
sprintf(
"What ways do you travel to school? %s%s",
toupper(substr(c, 1, 1)),
substr(c, 2, 100)
)
)
}
inzsummary(~ getlunch + travel, data = cas)
inzsummary(~ getlunch + travel, data = cas, g1 = gender)
inzsummary(~ bike + bus + motor + train + walk + other, data = cas)
inzplot(~ bus + train + bike, data = cas, g1 = gender)
inzsummary(~ bus + train + bike, data = cas, g1 = gender)
inzsummary(~ bike + bus + motor + train + walk + other, data = cas, g1 = gender)
# inzplot(~eth5_e_y8c+eth5_m_y8c+eth5_p_y8c, data = d)
# inzplot(~tu82_0_y8c+tu82_1_y8c+tu82_2_y8c+tu82_3_y8c+tu82_4_y8c+tu82_5_y8c+tu82_6_y8c+tu82_7_y8c+tu82_8_y8c, data = d)
## linked multi-vars
dummy_df <- data.frame(
d1_varx_1 = structure(factor(sample(c("yes", "no"), 100, TRUE, c(0.2, 0.8))), table = "d1"),
d1_varx_2 = structure(factor(sample(c("yes", "no"), 100, TRUE, c(0.4, 0.6))), table = "d1"),
d1_varx_3 = structure(factor(sample(c("yes", "no"), 100, TRUE, c(0.9, 0.1))), table = "d1"),
d2_varx_1 = structure(factor(sample(c("yes", "no"), 100, TRUE, c(0.5, 0.5))), table = "d2"),
d2_varx_2 = structure(factor(sample(c("yes", "no"), 100, TRUE, c(0.3, 0.7))), table = "d2"),
d2_varx_3 = structure(factor(sample(c("yes", "no"), 100, TRUE, c(0.8, 0.2))), table = "d2")
)
dummy_df2 <- data.frame(
varx_1 = factor(sample(c("yes", "no"), 100, TRUE, c(0.2, 0.8))),
varx_2 = factor(sample(c("yes", "no"), 100, TRUE, c(0.4, 0.6))),
varx_3 = factor(sample(c("yes", "no"), 100, TRUE, c(0.9, 0.1)))
)
inzplot(~ d1_varx_1 + d1_varx_2 + d1_varx_3 + d2_varx_1 + d2_varx_2 + d2_varx_3, data = dummy_df)
inzplot(~ varx_1 + varx_2 + varx_3, data = dummy_df2)
# guinz
guinz <- iNZightTools::load_linked("~/terourou/guinz/data/guinz8y2.inzlnk")
inzplot(~fn6_y8c, g1 = cself_proeth_y8c, data = guinz, plottype = "gg_stackedcolumn")
inzplot(~ eth5_e_y8c + eth5_m_y8c + eth5_p_y8c + eth5_a_y8c, data = guinz, outcome_value = "Yes")
guinz <- iNZightTools::load_linked("~/terourou/guinz/data/guinz_full.inzlnk")
inzplot(~ eth5_e_am + eth5_m_am + eth5_p_am + eth5_a_am + eth5_mela_am +
eth5_o_am + eth5_nzder_am + eth5_e_m9m + eth5_m_m9m + eth5_p_m9m + eth5_a_m9m +
eth5_mela_m9m + eth5_o_m9m + eth5_nzder_m9m + eth5_e_y8c + eth5_m_y8c +
eth5_p_y8c + eth5_a_y8c + eth5_mela_y8c + eth5_o_y8c + eth5_nzder_y8c,
outcome_value = "Yes",
rotation = TRUE,
# x_groups = list(
# European = c("European", "New Zealand European"),
# Pacific = c("Pacific", "Pacific people", "pacific")
# ),
data = guinz
)
inzplot(~ eth5_e_am + eth5_m_am + eth5_p_am + eth5_a_am + eth5_mela_am +
eth5_o_am + eth5_nzder_am + eth5_e_m9m + eth5_m_m9m + eth5_p_m9m +
eth5_a_m9m + eth5_mela_m9m + eth5_o_m9m + eth5_nzder_m9m + eth5_e_m54cm +
eth5_m_m54cm + eth5_p_m54cm + eth5_a_m54cm + eth5_mela_m54cm +
eth5_o_m54cm + eth5_nzder_m54cm + eth5_e_y8c + eth5_m_y8c +
eth5_p_y8c + eth5_a_y8c + eth5_mela_y8c + eth5_o_y8c + eth5_nzder_y8c,
data = guinz,
# x_groups = list(
# European = c("European", "New Zealand European", "European?"),
# Pacific = c("Pacific", "Pacific people", "pacific", "Pacific?"),
# Maori = c("Maori", "Maori?"),
# Asian = c("Asian", "Asian?"),
# MELAA = c("MELAA", "MELAA?"),
# Other = c("Other", "Other?"),
# "New Zealander" = c("New Zealander", "New Zealander?")
# ),
outcome_value = "Yes",
rotation = TRUE,
full_cases = TRUE
)
inzsummary(~ eth5_e_am + eth5_m_am + eth5_p_am + eth5_a_am + eth5_mela_am +
eth5_o_am + eth5_nzder_am + eth5_e_m9m + eth5_m_m9m + eth5_p_m9m +
eth5_a_m9m + eth5_mela_m9m + eth5_o_m9m + eth5_nzder_m9m + eth5_e_m54cm +
eth5_m_m54cm + eth5_p_m54cm + eth5_a_m54cm + eth5_mela_m54cm +
eth5_o_m54cm + eth5_nzder_m54cm + eth5_e_y8c + eth5_m_y8c +
eth5_p_y8c + eth5_a_y8c + eth5_mela_y8c + eth5_o_y8c + eth5_nzder_y8c,
data = guinz,
# x_groups = list(
# European = c("European", "New Zealand European", "European?"),
# Pacific = c("Pacific", "Pacific people", "pacific", "Pacific?"),
# Maori = c("Maori", "Maori?"),
# Asian = c("Asian", "Asian?"),
# MELAA = c("MELAA", "MELAA?"),
# Other = c("Other", "Other?"),
# "New Zealander" = c("New Zealander", "New Zealander?")
# ),
outcome_value = "Yes",
rotation = TRUE,
full_cases = TRUE
)
inzplot(~ eth5_e_am + eth5_m_am + eth5_p_am + eth5_a_am + eth5_mela_am +
eth5_o_am + eth5_nzder_am + eth5_e_m9m + eth5_m_m9m + eth5_p_m9m +
eth5_a_m9m + eth5_mela_m9m + eth5_o_m9m + eth5_nzder_m9m + eth5_e_m54cm +
eth5_m_m54cm + eth5_p_m54cm + eth5_a_m54cm + eth5_mela_m54cm +
eth5_o_m54cm + eth5_nzder_m54cm + eth5_e_y8c + eth5_m_y8c +
eth5_p_y8c + eth5_a_y8c + eth5_mela_y8c + eth5_o_y8c + eth5_nzder_y8c,
data = guinz,
# x_groups = list(
# European = c("European", "New Zealand European", "European?"),
# Pacific = c("Pacific", "Pacific people", "pacific", "Pacific?"),
# Maori = c("Maori", "Maori?"),
# Asian = c("Asian", "Asian?"),
# MELAA = c("MELAA", "MELAA?"),
# Other = c("Other", "Other?"),
# "New Zealander" = c("New Zealander", "New Zealander?")
# ),
# outcome_value = "Yes",
# rotation = TRUE,
full_cases = TRUE
)
inzplot(~ eth5_e_am + eth5_m_am + eth5_p_am + eth5_a_am,
g1 = cself_proeth_y8c,
data = guinz,
outcome_value = "Yes"
)
## themeing
guinz_palette <- list(
primary = c("#004775", "#00a9e9", "#39b54a"),
secondary = c("#6f818e", "#fdb913", "#d2232a")
)
theme_guinz <- function() {
ggplot2::theme_classic(
base_family = "Myriad Pro"
) +
ggplot2::theme(
legend.position = "bottom",
axis.line = ggplot2::element_blank(),
axis.ticks = ggplot2::element_blank(),
panel.grid.major.x = ggplot2::element_line(
size = 0.5,
color = "gray80"
),
panel.background = ggplot2::element_rect(fill = "white")
)
}
ggplot2::update_geom_defaults("bar", list(fill = guinz_palette$primary[2]))
ggplot2::theme_set(theme_guinz())
options(
inzight.default.palette.cat = c(guinz_palette$primary, guinz_palette$secondary),
ggplot2.discrete.fill = c(guinz_palette$primary, guinz_palette$secondary)
)
inzplot(~ techbebo + techfacebook + techinternet,
data = iNZightMR::census.at.school.5000,
gg_theme = theme_guinz()
)
inzplot(~ sport + sport_en, data = iNZightMR::census.at.school.5000)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.