Гистограмма ggplot2 и базовая hist()

Вопросы по статистическому пакету R. Не обязательно гео.
Ответить
Аватара пользователя
VistaSV30
Активный участник
Сообщения: 185
Зарегистрирован: 02 июл 2018, 15:05
Репутация: 7
Откуда: Балашиха

Гистограмма ggplot2 и базовая hist()

Сообщение VistaSV30 » 22 июл 2020, 14:33

Добрый день!
Скажите почему ggplot 2 и базовая функция hist() по разному строят гистограммы:

Код: Выделить всё

h <- rexp(10000, rate = 1)
hist(h)
qplot(h) + geom_histogram()
Изображение
Изображение

С реальными данными у меня примерно так же получается. (Я даже сначала обрадовался, что так показатель распределён).
Но когда посчитал частоты, то оказалось hist() строит правильно.

Для статьи хочу сделать диаграмму с оформлением как ggplot2
Природа не просто эксцентричнее, чем мы полагаем - она эксцентричнее, чем мы способны предположить. John Haldane

Аватара пользователя
VistaSV30
Активный участник
Сообщения: 185
Зарегистрирован: 02 июл 2018, 15:05
Репутация: 7
Откуда: Балашиха

Re: Гистограмма ggplot2 и базовая hist()

Сообщение VistaSV30 » 23 июл 2020, 09:04

Так и не нашел нигде почему ggplot2 слева выводит еще одну колонку. Должно же быть этому какое-то разумное объяснение. Не могли же разработчики специально внести такой баг.
Пока проблему исправил, указав границы интервала:

Код: Выделить всё

scale_x_continuous(limits = c(0, 8))
Природа не просто эксцентричнее, чем мы полагаем - она эксцентричнее, чем мы способны предположить. John Haldane

gamm
Гуру
Сообщения: 4046
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1050
Ваше звание: программист
Откуда: Казань

Re: Гистограмма ggplot2 и базовая hist()

Сообщение gamm » 23 июл 2020, 11:57

VistaSV30 писал(а):
23 июл 2020, 09:04
Должно же быть этому какое-то разумное объяснение.
ggplo2 и "разумное объяснение" вещи несовместимые. А в остальном нужно смотреть исходники, скорее всего для красоты сделали отступ

Ivor
Завсегдатай
Сообщения: 345
Зарегистрирован: 11 дек 2006, 09:46
Репутация: 102
Откуда: Иркутск

Re: Гистограмма ggplot2 и базовая hist()

Сообщение Ivor » 29 июл 2020, 07:23

VistaSV30, у вас в первой диаграмме первый столбец начинается от нуля, а во второй - стоит на нуле. Сталкивался с этим, но не искал, как победить

Ответить

Вернуться в «R»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 11 гостей