Сообщение об ошибке ggmosaic: метод по умолчанию не реализован для типа "список"
Попытка создать тепловую карту, используя ggmosaic
Я получаю ошибку Error in is.finite(x) : default method not implemented for type 'list'
При поиске этого сообщения об ошибке один из ответов был таким: "Эта ошибка вызвана тем, что функции is.infinite() и is.finite() не реализованы с помощью метода для data.frames". Но не полезное решение в вопросе ни о ggmosaic
Даже пример из виньетки мне не удался.
ggplot(data = NHANES) +
geom_mosaic(aes(weight = Weight, x = product(SleepHrsNight), fill=factor(SleepHrsNight)), na.rm=TRUE) +
labs(x="Hours of sleep a night ", title='f(SleepHrsNight)') + guides(fill=guide_legend(title = "SleepHrsNight", reverse = TRUE))
Моя система Windows, RStudio, версия R до первой, и ggmosaic
Версия 0.1.2
Готовый фрейм данных, который я хочу использовать,
structure(list(Diversity = structure(c(1L, 5L, 4L, 5L, 1L, 2L,
2L, 2L, 4L, 1L, 5L, 4L, 5L, 4L, 2L, 3L, 3L, 1L, 5L, 2L, 1L, 4L,
3L, 3L, 3L), .Label = c("AfricanAm", "Asian", "Cauc.", "Latino",
"Other"), class = "factor"), Office = structure(c(1L, 2L, 1L,
3L, 4L, 5L, 2L, 4L, 5L, 3L, 4L, 4L, 1L, 2L, 3L, 4L, 1L, 5L, 5L,
1L, 2L, 3L, 2L, 3L, 5L), .Label = c("Hamlet", "MainTown", "Metroprole",
"Smithville", "Urbanburg"), class = "factor"), JrAssoc = c(1,
1, 1, 1, 1, 1, 2, 2, 2, 4, 4, 1, 1, 1, 2, 2, 3, 3, 3, 5, 5, 2,
5, 9, 10), SrAssPtr = c(2, 2, 1, 1, 3, 2, 1, 4, 4, 5, 1, 1, 3,
5, 7, 3, 2, 1, 1, 1, 1, 2, 3, 4, 4)), row.names = c(NA, -25L), .Names = c("Diversity",
"Office", "JrAssoc", "SrAssPtr"), class = c("tbl_df", "tbl",
"data.frame"))
Этот код не удалось:
ggplot(diverse) +
geom_mosaic(aes(weight = 1, x = product(JrAssoc, SrAssPtr), fill = Diversity))
Спасибо за любые рекомендации.
1 ответ
Если вы просто обновите свою библиотеку ggplot2 таким образом
devtools::install_github('cran/ggplot2')
Ваша проблема должна быть решена.
Как уже упоминалось в моих комментариях, автор пытается решить проблему.