У меня есть некоторые данные, где большинство значений (около 10 миллионов в реальных данных) близки к нулю, но есть несколько выбросов.Я хочу показать распределение с гистограммой.Для содержания и анализа данных также важны выбросы и, следовательно, они должны быть видны на гистограмме.Использование логарифмической шкалы на y-axis
работает довольно хорошо, но остается проблемой.y-axis
теперь начинается с 1. Таким образом, корзины с ровно одним элементом в них не отображаются и не могут быть отделены от пустых.Кроме того, я получаю предупреждающее сообщение о бесконечных значениях для пустой корзины (это правильно, $ log (0) = - \ infty $).
Я сделал небольшой пример кода:
library(ggplot2)
set.seed(123)
data <- data.frame(x=c(abs(rnorm(10000)), 5.25, 5.5, 7.5))
ggplot(data, aes(x)) +
geom_histogram(binwidth=1, boundary=0) +
scale_y_log10()
Два выброса между 5 и 6 хорошо показаны, но тот, что в 7,5, нельзя отличить от двух пустых контейнеров.Как мне сказать ggplot
, чтобы начать рисовать ячейки с y-value
меньше 1?
PS: stackoverflow не позволяет mathjax для отображения математики?