создание многоугольника частоты с осью Y в процентах от максимального - PullRequest
1 голос
/ 17 апреля 2020

учитывая код

set.seed(1234)
dat <- data.frame(cond = factor(rep(c("A","B"), each=200)), 
                  rating = c(rnorm(200),rnorm(200, mean=.8)))
head(dat)
ggplot(dat, aes(x=rating)) + geom_freqpoly()

Мне нужно изменить ось Y в процентах от максимального количества. Каков наилучший подход?

Далее отредактировано: я не ищу способ показать процент от общего количества точек данных, но установить максимальный счет как 100% и показать все другие ячейки как процент от этого макс. Таким образом, ось Y будет работать от 1 до 100 с вершиной пика в 100.

1 Ответ

1 голос
/ 17 апреля 2020

Я был немного озадачен тем, что вы спрашивали изначально, но теперь я понимаю: вы хотите представить ось «нормализованную» в ..count.., где ваша наивысшая точка равна 1,0 (максимальное значение), и все остальные точки равны value / maximum value.

Для этого это должно работать:

ggplot(dat, aes(x=rating, y=..count../max(count))) + geom_freqpoly()

enter image description here

Если вы хотите чтобы изменить значения с 0 на 100 (вместо 0 на 1), просто умножьте на 100:

ggplot(dat, aes(x=rating, y=(..count../max(count))*100)) + geom_freqpoly()

enter image description here

...