Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在R中绘制标准正常CDF?_R - Fatal编程技术网

如何在R中绘制标准正常CDF?

如何在R中绘制标准正常CDF?,r,R,正如标题所说,我试图绘制一些值a和b之间的N(0,1)分布的CDF。即Phi_0,1(a)至Phi_0,1(b)。由于某些原因,我在查找有关如何执行此操作的信息时遇到问题。您可以使用曲线进行绘图,pnorm是正态概率(CDF)函数: curve(pnorm, from = -5, to = 2) 根据需要将从和调整为值。如果需要密度函数(PDF)而不是CDF,请使用dnorm。请参阅?曲线帮助页以了解一些附加参数 或使用ggplot2 library(ggplot2) ggplot(data

正如标题所说,我试图绘制一些值a和b之间的N(0,1)分布的CDF。即Phi_0,1(a)至Phi_0,1(b)。由于某些原因,我在查找有关如何执行此操作的信息时遇到问题。

您可以使用
曲线
进行绘图,
pnorm
是正态概率(CDF)函数:

curve(pnorm, from = -5, to = 2)

根据需要将
调整为
值。如果需要密度函数(PDF)而不是CDF,请使用
dnorm
。请参阅
?曲线
帮助页以了解一些附加参数

或使用
ggplot2

library(ggplot2)
ggplot(data.frame(x = c(-5, 2)), aes(x = x)) +
  stat_function(fun = pnorm)

通常,您可以生成数据并使用大多数能够在坐标系中绘制直线的绘图功能

x = seq(from = -5, to = 2, length.out = 1000)
y = pnorm(x)

ggplot(data.frame(x=c(-5,2)),aes(x))+stat_函数(fun=pnorm)
太好了,谢谢!但是如果我想把这条曲线和实际数据一起画呢?同时使用标准绘图函数和曲线函数?在base R中,首次启动绘图时,会创建一个新绘图。还有一些方法可以在上面画画。如果像我所展示的那样使用
curve
,它会创建一个新的绘图,然后可以使用
points()
lines()
向其添加更多数据。或者,如果您已经有了要添加曲线的绘图,请使用
curve()
add=TRUE
参数,它将在当前绘图的顶部绘制,而不是创建新的绘图。