ggplot的曲线()的等价

是否有一个等价的方法来绘制函数使用ggplot curve()命令中使用的基础graphics? 我猜想另一种方法是创build一个函数值的向量并绘制一条连线,但是我希望更简单些。

谢谢!

您可以使用stat_function添加曲线:

 ggplot(data.frame(x=c(0, 10)), aes(x)) + stat_function(fun=sin) 

也可以使用qplot ,但不清楚这是否简单:

 qplot(c(0,2), fun=sin, stat="function", geom="line") 

如果你的曲线函数更复杂,那么使用lambda函数。 例如,

 ggplot(data.frame(x=c(0, 10)), aes(x)) + stat_function(fun=function(x) sin(x) + log(x)) 

你可以在http://kohske.wordpress.com/2010/12/25/draw-function-without-data-in-ggplot2/find其他例子;

上面的“data.frame”示例运行良好,它使网格线。 由于给出的原因,'qplot'示例在ggplot2 2.2.0中不起作用。

您也可以使用ggplot2 2.2.0中的“曲线”function,但不会自动生成网格线或背景颜色。 例如:曲线(cos(x),从= 0到= pi / 2)。

“ggplot(data.frame(…)方法给出了ggplot2格式化选项的全部令人印象深刻的范围,我喜欢它。