Cerco di sovrapporre una funzione tramite stat_function()
in ggplot
ma non riesco a capire il mio errore. Questo esempio produce un bel terreno alla ricerca:Sovrapposizione di una densità normale del registro in ggplot e stat_function()
data <- data.frame(x=rt(10000, df=7))
ggplot(data=data, aes(x=x)) + geom_histogram(aes(y = ..density..)) +
stat_function(fun =dnorm, size=1, color='gray', args=list()) +
opts(title="Histogram of interest rate changes") + theme_bw()
ma quando provo a sovrapporre una densità di log-normale questo non funziona come previsto (o dovrei dire come ci si aspetta questo non funziona ;):
data <- data.frame(x=rf(10000, df1=7, df2=120))
ggplot(data=data, aes(x=x)) + geom_histogram(aes(y = ..density..)) +
stat_function(fun =dnorm, size=1, color='gray', args=list(log=TRUE)) +
opts(title="Histogram of interest rate changes") + theme_bw()
quindi, ecco la mia spera semplice domanda: che cosa sto facendo male qui? Immagino che questo sia un problema davvero semplice, ma non vedo la risposta - scusa.
Non capisco come un desnsity può essere negativo. –
Penso che parte del tuo problema sia 'log = TRUE' –
@LucianoSelzer ovviamente avevi ragione - e pensavo che avrebbe funzionato tramite l'argomento' log = TRUE' ma come Sven ha dimostrato che c'è un modo più semplice;) – Seb