2013-05-29 7 views
8

Ich versuche, ein geom_bar mit zu erstellen:Wie löst man das 'ymax nicht definiert'?

<<boring-plots, fig.width=5, fig.height=5, out.width='.45\\linewidth',fig.show='hold', echo=FALSE, warning=FALSE>>= 
ma_at_vs_t_duh + geom_bar(stat="bin", fill="white", colour="darkgreen", width=.4)  + ggtitle("Anzahl MA nach Vertragsart, \nMandant 10 und 50") + 
theme(plot.title = element_text(lineheight=.6, face="bold")) + 
xlab("Vertragsart") + 
ylab("Anzahl MA") + 
theme(axis.title.x = element_text(vjust=0.5, size=14), axis.text.x=element_text(size=10)) + 
stat_bin(aes(label=..count..), geom="text", size=4, vjust=-0.5) 
@ 

Nach der Rnw-Datei kompiliert Ich bin in der pdf-Ausgabe-Datei bekommen:

ymax not defined: adjusting position using y instead 

ich Hilfe schätzen würde. Vielen Dank!

+4

Die Warnung/Nachricht kommt von ggplot und ist harmlos. Ich erinnere mich nicht * genau * warum es auftritt oder wie man es unterdrückt ('suppressMessages()'? Setze 'message = FALSE' in den' knitr' chunk options ?, aber ich habe es oft gesehen) –

+2

... und die Einstellung 'warning = FALSE' in den knitr chunk Optionen funktioniert normalerweise für mich. – joran

+0

warning = FALSE scheint in der R-Version 3.0.2 (2013-09-25) nicht zu funktionieren mit dem Knoten "3.0.1" – skleene

Antwort

23

Wenn noch jemand daran interessiert ist, können Sie ymax = max(value) hinzufügen, in der AES von ggplot, und das wird die 'Ymax nicht definiert' Warnung weggehen.

Da ymax zum Beispiel zur Definition der maximalen Höhe eines Barplots verwendet wird, würde ich empfehlen, auf der Y-Achse etwas mehr als den Maximalwert Ihrer Daten zu setzen.

Etwas wie folgt aus:

ggplot(df,aes(x=bla,y=blu,ymax=max(blu)*1.05))+geom_bar() 

von 1,05 Multipliziert man gibt Ihnen 5% Luft zum Atmen für Anmerkung.