ошибка построения ecdf в ggplot2: неизвестное имя цвета

#r #ggplot2 #ecdf

#r #ggplot2 #ecdf

Вопрос:

Я получаю сообщение об ошибке с очень простым графиком ecdf в ggplot. Ошибка в названии цвета.

     library(ggplot2)

ggplot(iris)  
  stat_ecdf(aes(x = Sepal.Length,
                col = Species),
            geom = "point")


Error: Unknown colour name: setosa
  

Комментарии:

1. Я не могу воспроизвести это — ваш код дает ожидаемый результат для меня. Попробуйте перезапустить R и повторно запустить свой код

2. перезапущен R. Та же ошибка

3. Попробуйте добавить scale_color_manual(values = rainbow(3)) . Это работает?

Ответ №1:

иногда это случалось со мной без видимой причины, но я решил это, просто заставляя виды быть фактором.

Попробуйте это:

         library(ggplot2)

ggplot(iris)  
  stat_ecdf(aes(x = Sepal.Length,
                col = as.factor(Species)),
            geom = "point")
  

Ответ №2:

Setosa — это значение поля Species. Похоже, код интерпретирует содержимое видов как буквальные цвета для этих записей. Кажется, где-то в вашем коде или сеансе scale_colour_identity() был активирован.

Редактировать:

Я запустил ваш код точно так, как вы его предоставили, и он работает нормально и выдает ожидаемый результат с ожидаемым поведением присвоения трех цветов по умолчанию трем видам. Итак, проблема определенно в том, что вы не включили в свой пост.