2013-10-10 4 views
-1

J'ai créé un graphique linéaire chronologique pour les variables des ratios du coût du logement et du revenu du logement dans R mais je ne parviens pas à spécifier différents symboles ponctuels pour chaque variable comme suggéré dans d'autres des postes. Je reçois le message d'erreur « Une variable continue ne peut pas être mis en correspondance avec la forme » contre les (simplifiées pour deux variables):Spécification de points sur plusieurs points dans R

ggplot(housing, aes(year)) + 
    geom_line(aes(y = Greenwich, colour = "Greenwich"))+ 
    geom_point(aes(y = Greenwich, colour = "Greenwich", shape = 1)) + 
    scale_shape_identity() + #added missing "+" 
    geom_line(aes(y = median, colour = "median"))+ 
    geom_point(aes(y = median, colour = "median", shape = 2)) + # added missing parenthesis 
    scale_shape_identity() + # removed extra parenthesis 
    ylab("house price to earnings (lower quartile)")+ 
    theme(legend.title=element_blank()) 

Toutes les suggestions les bienvenus.

+0

Salut et bienvenue à SO! Première suggestion: veuillez fournir [un ensemble de données minimal et reproductible] (http://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example/5963610#5963610) avec le code Vous avez essayé. Ensuite, vous êtes beaucoup plus susceptible de recevoir une réponse rapide et utile. Merci! – Henrik

+1

En essayant de reformater afin qu'il soit plus clair, j'ai trouvé ce qui semblait être un signe "+" - manquant. Vous pourriez essayer avec le nouveau code. Le message d'erreur suggère que vous souhaitiez contraindre une variable numérique à l'entier avec 'as.integer' ou' trunc'. –

+0

@Henrik et DWin, je ne savais pas que vous aviez apparemment édité le PO avec un exemple de travail au moment où j'ai mis ma réponse. Pardon. – ako

Répondre

1

Vous êtes assez proche:

## toy data 
year <- runif(20,10,20) 
Greenwich <- runif(20,30,50) 
median <- runif(20,30,50) 
data<-data.frame(year,Greenwich,median) 

## map it 
ggplot(data, aes(year)) + 
    geom_line(aes(y = Greenwich, colour = "Greenwich"))+ scale_shape_identity()+ 
    geom_point(aes(y = Greenwich, colour = "Greenwich",shape = 12,size=8))+ 
    geom_line(aes(y = median, colour = "median")) + 
    geom_point(aes(y = median, colour = "median",shape = 10,size=8))+ 
ylab("house price to earnings (lower quartile)")+ 
theme(legend.title=element_blank()) 

enter image description here

+0

Merci beaucoup DWin, Henrik et Ako. Vos amendements ont fait l'affaire. Ceci est l'ensemble de données simplifiée J'utilise: année Greenwich médiane 1 1997 3,38 3,82 2 1998 3,72 3,91 3 1999 4,13 4,11 4 2000 5,00 4,53 5 2001 5,59 4,97 6 2002 6,54 5,53 7 2003 7,73 6,59 8 2004 8,19 7,66 9 2005 8,09 8,08 10 2006 8,59 8,15 11 2007 8,59 8,59 12 2008 9,30 8,34 13 2009 8,27 7,30 14 2010 8,27 7,77 15 2011 8,80 7,53 16 2012 8,65 7,60 – Curious56

+0

@ Curious56, si le répondre correctement à votre question, vous pourriez envisager de l'accepter par cli cking sur la coche verte sous les flèches de vote. Voir plus d'informations sur ce [ici] (http://stackoverflow.com/help/someone-answers). Tks. –

Questions connexes