Ich habe überprüft, was hier auf stat_function ist, und ich kann immer noch nicht funktionieren. Hier min Arbeitscode:R stat_function mit alternativen Datensatz
plotdata <- cbind(as.data.frame(seq(-5, 5, length=10)), as.data.frame(-seq(-5, 5, length=10)))
colnames(plotdata) <- c('x', 'y')
xvalues <- as.data.frame(seq(-5, 5, length = 100))
colnames(xvalues) <- 'x'
xey <- function(x) {x}
#ggplot(plotdata, aes(x, y)) + geom_line() + stat_function(data=xvalues, fun = xey, linetype = 2)
ggplot(plotdata, aes(x, y)) + geom_line() + stat_function(mapping = aes(x = x), data=xvalues, fun = xey, linetype = 2)
Der Fehler, den ich bekommen ist:
Error in eval(expr, envir, enclos) : object 'y' not found
Wie Sie sehen können, habe ich es versucht, sowohl mit Mapping und ohne, und der Fehler ist die gleiche. Die Handlung funktioniert ohne die Funktion stat_function, die Xey-Funktion ist vektorisiert und in x ausgedrückt, und die Spalte xvalues ist mit x bezeichnet, also ????
EDIT - hinzugefügte Namensspalte in xvalues, nicht von meinem Notebook übertragen.
Danke Rilcon! Ah, ein Problem bei der Zusammenstellung eines minimalen Arbeitsbeispiels. Stellen Sie sich vor, dass sich xvalues von den Werten in plotdata unterscheidet. Ich möchte, dass die stat_function auf einem VERSCHIEDENEN Datensatz, der nur aus x-Werten besteht, plot-Daten plottet. Vielen Dank für Ihre Aufmerksamkeit auf meine Frage. – zazizoma
Die Eingaben für 'stat_function' müssen entweder eine Gleichung oder' x, y' Paare sein, es sieht so aus, als würden Sie nur 'x' Werte übergeben. – Rilcon42
Das x = x stammt aus dem Beispiel für stat_plots aus der Dokumentation, das kein y verwendet. Aber ich habe versucht, x = x, y = 0 im Mapping und es hat funktioniert! – zazizoma