Установка минимального / максимального размера в легенде в ggplot - PullRequest
0 голосов
/ 11 июля 2020

Есть ли способ гарантировать, что легенда для размера aestheti c в ggplot всегда начинается и заканчивается на минимальном и максимальном значениях?

Например, минимальное значение в вызове ниже:

p<-ggplot(mpg, aes(displ, hwy, size = hwy)) + geom_point()

(первый пример здесь ) должно быть 12. Но наименьший размер круга, который он показывает, соответствует значению 20.

Я попытался добавить:

p+scale_size_manual(values=c(min(mpg$hwy),median(mpg$hwy), max(mpg$hwy)), labels = c(as.character(min(mpg$hwy)),as.character(median(mpg$hwy)), as.character(max(mpg$hwy))))

, но выдает ошибку (хотя я думаю, что метки и значения находятся в соответствующем формате). Я также пробовал:

scale_size_continuous(range = c(min(mpg$hwy), max(mpg$hwy))

как рекомендовано здесь , но он делает символы, которые слишком большие.

Есть подсказки? спасибо!

Ответы [ 2 ]

1 голос
/ 11 июля 2020

Вы можете попробовать:

p<-ggplot(mpg, aes(displ, hwy, size = factor(hwy))) + geom_point()

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

0 голосов
/ 11 июля 2020

Вы можете установить перерывы на основе минимального и максимального значений hwy; количество перерывов зависит от вас. Причина, по которой вы не получаете минимальные и максимальные значения, обязательно от ggplot, заключается в том, что он автоматизирует процесс.



library(ggplot2)


ggplot(mpg, aes(displ, hwy, size = hwy)) + 
  geom_point()+
  scale_size_continuous(breaks = seq(range(mpg$hwy)[1], range(mpg$hwy)[2], length.out = 5))

Created on 2020-07-10 by the пакет реплекс (v0.3.0)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...