Можно ли редактировать метки осей для мозаичного графика из пакета vcd?

data("HairEyeColor")
mosaic(HairEyeColor, shade = TRUE)

Итоговый сюжет

Есть ли аргументы, которые я могу использовать для изменения меток на полях результирующего графика выше? Например, я хотел бы изменить "Мужской" на "М", "Женский" на "F", чтобы избежать посягательства на текст, и сделать некоторые пометки в заголовках.

Я не могу найти ничего о редактировании меток осей на странице справки пакета.

1 ответ

Решение
lnames <- list(Sex = c("M", "F"))
mosaic(HairEyeColor, set_labels=lnames, shade=T)

Или же...

mosaic(HairEyeColor, set_labels=list(Sex = c("M", "F")), shade=T)

В пакете vcd есть сложная система настройки меток - см. Надписи в Strucplot Framework.

Этикетки могут быть сокращены до abbreviate_labs. Порядок векторов соответствует порядку разбиений:Hair, Eye, Sex.

vcd::mosaic(HairEyeColor, shade = TRUE, labeling_args = list(abbreviate_labs = c(5, 5, 1)))

Я бы добавил, что вы можете увеличить расстояние между метками, если их слишком много, изменив этот параметр:

spacing = vcd::spacing_conditional(sp = unit(0.3, "lines"), start = unit(2, "lines"), rate = 1.8)

В частности, вы должны изменить sp = unit(0.3, "lines") вместо 0,3, которое является значением по умолчанию.

Другие вопросы по тегам