2012-04-02 21 views
8

Ben ggplot2 çok basit yığın çubuk grafiği yapmaya çalışıyorum bulunamadı, ama nedense çalışmıyor ve şu hata mesajını alıyorum nesne 0): 'y' nesnesi bulunamadı. Sorun nerede?ggplot2 yığılmış çubuk grafik y

factorvar <- c(1,1,1,2,2,2,3,3,3) 
factorvar <- factor(factorvar, labels=c("Type", "Size", "Outcome")) 
freq <- c(3,1,4,1,2,2,4,1,1) 
fillvar <- c(1,1,1,2,2,2,3,3,3) 
fillvar <- factor(fillvar) 

df.harvest <- data.frame(fillvar,freq,factorvar) 

harvest <- ggplot(df.harvest, aes(x=factorvar, y=freq, fill=fillvar)) + geom_bar() 
harvest 
+2

'şöyle çağırır geom_bar':' geom_bar (istatistik = "kimliğini") '? –

cevap

1

Ben hata mesajı ne anlama geldiğini emin değilim, ama (senin fillvar değişken yerine) fillvar = c(1,2,3,1,2,3,1,2,3), kullanırsanız bir yığın çubuk grafiği alacak.

2
Sana saymak istiyorum ve yığın istediğini, ancak bazı verilerin kullanılarak anlamak gerçekten emin değilim

ve bu kod ben bu olsun

qplot(factor(freq), data=df.harvest, geom="bar", fill=factorvar) 

,

qplot(factor(freq), data=df.harvest, geom="bar", fill=factor(factorvar))

ne arıyorsun bu mu?

3

Bu oldukça eski ama bunun için herhangi bir iyi bir cevap görmedim: Eğer y ekseni sağlayarak eğer

Hep geom_bar bağımsız değişkenleri belirtmelidir.

Zaten y ekseni olarak frekansı sağlıyoruz ve burada fillvar esasen factorvar aynıdır, aynı zamanda geom_bar(stat = "identity")

belirtmelisiniz böylece geom_bar, sizin için hesaplamak istemiyoruz ve hiçbir nokta içinde yoktur

Birini eksen ve bir tane dolgu rengi olarak kullanma. bunlar farklı olsaydı

Ancak, aynı zamanda geom_bar(stat = "identity", position="dodge") veya (stat = "identity", position="stack") belirtmek zorunda kaldı. Varsayılan olarak

, stat senin durumunda "bin" geçiş ve hatayı veriyordu. Ayrıca, varsayılan olarak, konum stack kullanır. `Adresinden Müşteri

Eğer` in stat = "kimlik" add ne olur
İlgili konular