2015-04-22 6 views
5

Gibt es eine Möglichkeit, eine Polynomfunktion in ggplot zu zeichnen, ohne einen Datafame zeichnen zu müssen, der ausgewählte Punkte entlang der interessierenden Kurve enthält? Sagen wir, die Gleichung ist x^3 + x^2 + x + 5. Ich dachte, dies könnte auf die gleiche Weise geschehen wie geom_abline, um eine gerade Linie zu einem Plot hinzuzufügen, habe aber bisher kein Glück, einen Weg zu finden um dies zu tun. Ich überprüfte die ggplot2 documentation, aber ich sah nichts dort dachte ich würde helfen. geom_abline scheint sich nicht über gerade Linien zu erstrecken.Plotpolynomkurve in ggplot unter Verwendung der Gleichung, nicht der Datenpunkte

Mein Endziel ist es, Daten aus einem unabhängigen Datensatz zu plotten und diese Polynomkurve als "Referenzstandard" zu verwenden. Der folgende Code zeichnet die interessierende Kurve effektiv auf, indem die Werte entlang der Kurve aufgetragen werden und nicht direkt mit der Gleichung.

x <- 1:100 
y <- x^3+x^2+x+5 
dat <- as.data.frame(x,y) 
ggplot(dat, aes(x,y)) + geom_point() 
+0

Weitere Informationen zu Bes n Antwort kann an dieser SO Post. http://stackoverflow.com/questions/5177846/equivalent-of-curve-for-gplot –

Antwort

8

Sie suchen nach stat_function() suchen, denke ich:

x <- 1:100 
dat <- data.frame(x,y=x^3+x^2+x+5) 
f <- function(x) x^3+x^2+x+5 
ggplot(dat, aes(x,y)) + 
    geom_point()+ 
    stat_function(fun=f, colour="red") 

enter image description here

+0

Vielen Dank! Genau das habe ich gesucht :) – tsurudak

Verwandte Themen