2010-11-19 26 views
1

Je suis en train de tracer les données en utilisant le paquet ggplot2, mais je suis croisement avec une erreur: les données sont un ensemble de colonnes qui représente toutes les valeurs de jour (les valeurs changent en altitude)traçant avec ggplot2. Erreur

V1 V2.... V500 
2E-15.....3E-14 
3e-14.....3E-21 
1.3E-15....NA 

I vouloir tracer toutes les données dans deux axes avec un remplissage des valeurs.

Code;

a<-data.frame("/../vertical_value.csv",sep=",",header=F) 
am<-melt(t(a)) 
dataset<-expand.grid(X = 1:500, H = seq(1,25,by=1)) 
dataset$axp<-am$value 
g<-ggplot(dataset, aes(x = X, y = H, fill = axp)) + geom_tile() 

erreur:

Error: Casting formula contains variables not found in molten data: XHaxp 
+0

Jaun, serait-il possible de nous fournir vos données ou données identiques qui sont dans la même forme? L'erreur de conversion peut refléter NA dans vos données. na.omit (jeu de données) peut fonctionner. Mais c'est difficile à dire sans voir ce que ça devrait être. Aussi, quelqu'un pourrait-il codifier son message correctement? –

+0

Veuillez donner un exemple reproductible. J'ai essayé votre code avec 'a <- matrice (rnorm (500 * 25), nc = 500)', et je n'ai pas eu d'erreurs (je ne comprends pas pourquoi vous ne pouvez pas utiliser 'am' directement dans le graphique) . – Aniko

+0

Je ne sais pas exactement ce qui se passe ici, mais je crois que votre erreur pourrait être à l'étape de fusion (t (a))? Il est vraiment difficile d'aller plus loin sans un exemple reproductible. Voici un exemple similaire qui fonctionne (désolé pour le format): z <- data.frame (V1 = 1: 5, V2 = 2: 6, V3 = 3: 7); Bibliothèque (remodeler); mm <- masse fondue (t (z)); dataset <- expand.grid (X = 1: 5, H = 1: 3); dataset $ axp <- mm $ value; Bibliothèque (ggplot2); ggplot (jeu de données, aes (x = X, y = H, remplissage = axp)) + geom_tile() –

Répondre

1

En regardant cette fois, je pense que vous devriez être en mesure de contourner ce juste en laissant tomber les lignes NA après vous fondre.

a<-data.frame("/../vertical_value.csv",sep=",",header=F) 
am<-melt(t(a)) 
am <- na.omit(am) ## ADD THIS LINE 
dataset<-expand.grid(X = 1:500, H = seq(1,25,by=1)) 
dataset$axp<-am$value 
g<-ggplot(dataset, aes(x = X, y = H, fill = axp)) + geom_tile()