Размер метки в directlabels geom_dl()

Мне очень понравился пакет directlabels для динамического позиционирования меток на графике. Хотя это все еще не идеально, это помогает разумно предотвратить перекрытие между метками точечных диаграмм, например, со многими точками - специально для черновой версии диаграмм, а не для окончательной.

Однако я не могу найти способ изменить размер метки при использовании функции geom_dl(). Там в любом случае?

Я пытался передать функции size и cex как обычный или aes() аргумент.


person Ali    schedule 06.11.2012    source источник
comment
воспроизводимый пример, пожалуйста.   -  person metasequoia    schedule 06.11.2012


Ответы (1)


Поместите cex в список. Другие функции форматирования также должны быть включены в список. См. некоторые примеры в ?directlabels::geom_dl

library(ggplot2)
library(directlabels)

dat = data.frame(x = 1:10, y = 1:10, z = letters[1:10])

ggplot(dat, aes(x, y)) +
    geom_point() +
    geom_dl(aes(label = z), method = list(cex = 2, rot = -45, hjust = -.5))

введите здесь описание изображения

ИЗМЕНИТЬ

Метод тоже помещается в список:

ggplot(dat, aes(x, y)) +
    geom_point() +
    geom_dl(aes(label = z), method = list("smart.grid", cex = 2))
person Sandy Muspratt    schedule 06.11.2012
comment
Спасибо, когда я пытаюсь добавить geom_dl( aes(label = z), method=smart.grid, list(cex = 1, rot = -45, hjust = -.5)), он говорит: Ошибка: ggplot2 не знать, как обращаться с данными списка классов. Не могли бы вы решить это? - person Ali; 06.11.2012
comment
@AliSharifi, "smart.grid" тоже входит в список: geom_dl(aes(label = z), list("smart.grid", cex = 2)) - person Sandy Muspratt; 06.11.2012