如何在R中绘制多个函数?

6
使用ggplot,有没有一种方法可以在同一图表上绘制多个函数?我想使用文本文件中的参数作为函数的参数,并将这些函数叠加在同一图表上。
我理解这个链接,但我不知道如何在循环过程中将可视化的函数添加在一起。

为什么不在每次循环中添加一个 stat_function,例如 p <- p + stat_function(fun = dnorm, colour="red") 并在最后打印出来:print(p)? 访问以下链接查看详情:http://had.co.nz/ggplot2/stat_function.html - gd047
1个回答

7
这里是 Hadley 想法的一个实现。
library(ggplot2)
funcs <- list(log,function(x) x,function(x) x*log(x),function(x) x^2,  exp)
cols <-heat.colors(5,1)
p <-ggplot()+xlim(c(1,10))+ylim(c(1,10))
for(i in 1:length(funcs))
    p <- p + stat_function(aes(y=0),fun = funcs[[i]], colour=cols[i])
print(p)

谢谢您的建议,但是我不能按照现有代码运行它。我对R语法不是很熟悉,如果我遗漏了某些显然的部分,请见谅。 - djq
你需要加载ggplot2,可以通过调用library(ggplot2)来实现。如果仍然遇到问题,请分享您遇到的错误信息。 - Ian Fellows
也许您错过了安装步骤: install.packages("ggplot2") - Paolo
谢谢 - 现在它可以工作了。我之前不确定自己做错了什么。我确实导入了ggplot2,但是我一直收到有关绘图中没有层的错误。 - djq

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接