Ошибка: ggplot2 не знает, как обращаться с данными класса gg / ggplot - PullRequest
0 голосов
/ 19 мая 2018

Здравствуйте. Я использую R уже около года, но только в свободное от работы время, и я столкнулся со следующей ошибкой при попытке создать график на ggplot:

Error: ggplot2 doesn't know how to deal with data of class gg/ggplot

Я вижу сообщение об ошибке при попытке создать любой из 3 приведенных ниже графиков.

BookingData %>%
ggplot() %>%
geom_bar(mapping = aes(x = Destination))

BookingData %>%
ggplot() %>%
geom_bar(mapping = aes(x = Cost))

BookingData %>%
ggplot() %>%
geom_point(mapping = aes(x = Destination, y = Cost))

Данные, которые я анализирую:

str(BookingData)
'data.frame':   8583 obs. of  7 variables:
$ Person.URN  : int  4087 39748 294410 366031 692418 841419 1018069 46055 
253036 484387 ...
$ Booking.URN : int  9298 79548 548230 697854 1314354 1594476 1930719 91905 
472923 921033 ...
$ Destination : Factor w/ 15 levels "Australia","Denmark",..: 4 4 11 3 15 5 
1 1 4 15 ...
$ Continent   : Factor w/ 5 levels "Africa","Americas",..: 5 5 5 5 2 5 4 4 5 
2 ...
$ Product     : Factor w/ 3 levels "Accommodation Only",..: 3 3 3 3 2 3 3 2 
3 3 ...
$ Cost        : int  629 1047 454 798 676 1073 482 587 1217 532 ...
$ Booking.Date: Date, format: "2009-09-19" "2009-09-19" ...

Любая помощь, которую вы можете предоставить, почему яя вижу это сообщение об ошибке, и как я могу исправить его, будет высоко ценится.

1 Ответ

0 голосов
/ 19 мая 2018

Поскольку я не могу воспроизвести ваши данные, я использую набор данных mtcars.Вашей основной ошибкой было использование трубы (%>%) вместо +.Кроме того, я предпочитаю ставить aes() (ось x \ y) под ggplot(), а не под другим аргументом.

Например:

require(tidyverse)

df <- mtcars

df %>% 
  ggplot(aes(x = factor(vs))) +
  geom_bar()

df %>%
  ggplot(aes(x = mpg, y = disp)) +
  geom_point()

Вы можете посмотреть здесь для получения дополнительных объяснений и примеров.

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