Сделайте символы легенды меньше, чем по умолчанию, в R-вафельном графике

У меня есть двухчастный вафельный сюжет с множеством маленьких квадратов и легенда, содержащая два квадрата. Я бы хотел, чтобы размеры всех этих квадратов были одинаковыми.

На GitHub была открыта проблема по этому поводу, и владелец репо сказал, что, поскольку waffle() возвращает объект ggplot2, мы можем использовать для этого guide().

Я попытался найти документацию, чтобы сделать это, и придумал

       library(waffle)

phrase_count = 17345/10000
all_count = (22784085 - phrase_count)/10000

my_waffle = waffle(c("All"=all_count, "Phrases"=phrase_count), 
                   rows=43, 
                   size=0.6,
                   colors=c("#969696", "pink", "white"),
                   flip=TRUE)

my_waffle + guides(colour=guide_legend(override.aes = list(size=0.6)))

но это не влияет на размер легенды. Я видел, как люди использовали color, colour, или же shape, но ни один из этих аргументов мне не подходит.

Как добиться того, чтобы размер квадратов в легенде совпадал с размером квадратов на самом графике?

1 ответ

Решение

Попробуйте установить theme() для вашего ключа легенды, поскольку объект вафли ggplot2 природа, как упоминалось в комментариях @Waldi:

       #Code
my_waffle <- my_waffle + theme(legend.key.size = unit(3, "mm"))

Вывод:

А может это:

       #Code 2
my_waffle + theme(legend.key.height = unit(0.2, "cm"),
                  legend.key.width = unit(0.3, "cm"))

Вывод:

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