2016-07-09 1 views
2

Я просто пытаюсь сделать простой сюжет с использованием mtcars и ggplot:mtcars ggplot не знает, как обращаться с классом числовом

ggplot(data=mtcars, aes(x=mpg,y=hp))+geom_line(mpg,hp,col=cyl) 

, но я получаю сообщение об ошибке:

ggplot doesnt know how to deal with class numeric

Что продолжается?

+5

Что именно вы пытаетесь достичь? Почему вы передаете 'mpg' и' hp' дважды и почему они не отображаются в 'aes()' в geom_line? – Sumedh

+0

Возможный дубликат [In R, имеющий дело с ошибкой: ggplot2 не знает, как обращаться с данными класса numeric] (http://stackoverflow.com/questions/29953011/in-r-dealing-with-error-ggplot2 -doesnt-know-how-to-deal-with-data-of-class-nu) –

+0

Добро пожаловать в Stack Overflow. Вы можете проверить следующие ссылки: [Как создать минимальный, полный и проверенный пример] (http://stackoverflow.com/help/mcve) и [Как задать хороший вопрос] (http: //stackoverflow.com/help/how-to-ask) – steveb

ответ

0

Смотрите, если вы получите лучшие результаты прохождения Hte аргумент aes внутри geom_line:

ggplot(data=mtcars, aes(x=mpg,y=hp))+geom_line(aes(x=mpg,y=hp,colour=cyl)) 

Я думаю, что результаты немного понятнее, если добавить группировку параметров к основному aes спецификации:

ggplot(data=mtcars, aes(x=mpg,y=hp, group=cyl)) + 
     geom_line(aes(x=mpg,y=hp,colour=cyl)) 

И еще лучшая условная анотация с коэффициентом() по цинку:

ggplot(data=mtcars, aes(x=mpg,y=hp, group=cyl))+ 
     geom_line(aes(x=mpg,y=hp,col=factor(cyl))) 
1

Мое предложение - указать всю эстетику в одном месте и принудить cyl к factor для цветовой кодировки как категориальную переменную.

ggplot(data=mtcars, aes(x=mpg, y=hp, colour=factor(cyl))) + geom_line() 

создаст enter image description here

+0

Это работает очень хорошо. Не могли бы вы объяснить мне, почему у меня не работает? Я сделал код, следующий за этим документом: https://www.google.com/url?sa=i&rct=j&q=&esrc=s&source=images&cd=&cad=rja&uact=8&ved=0ahUKEwib7vGlwOfNAhVE6iYKHY7zBskQjRwIBw&url=https%3A%2F%2Fblog.rstudio. org% 2F2015% 2F03% 2F30% 2Fdata-visualization-cheatsheet-plus-spanish-translations% 2F & bvm = bv.126130881, d.eWE & psig = AFQjCNFOvZK4EPjQIJzk2qu0rk0-TND-OQ & ust = 1468192196930217 Я полагаюсь на это для многих своих графиков в ggplot, так что если с этим что-то не так, я хотел бы узнать. – Evan

+0

@Evan Я внимательно прочитал визуализацию _Data с помощью ggplot2 Cheat Sheet_, о которой вы говорите. Пример: ggplot (mpg, aes (hwy, cty)) + geom_point (aes (color = cyl)) ', который на первый взгляд похож на ваш Q, но обратите внимание на вызов' aes' в 'geom_point'. В другом примере используется 'qplot', который имеет упрощенный синтаксис, но менее гибкий. Звонки на 'qplot' и' ggplot' не должны смешиваться (ну, я никогда не пытался ...). Пожалуйста, google для 'Hadley Wickam ggplot2 book'. Книга очень помогла мне в создании сложных графиков. – Uwe

Смежные вопросы