簡體   English   中英

使用 TIdyverse 的 plot 累積分布 function 的簡單方法?

[英]Simple way to plot a cumulative distribution function using TIdyverse?

我正在研究Michael Crawley 的 R 書,我已經到達了他展示如何處理不同概率函數行為的部分。 在這一部分中,他繪制了一個簡單的累積分布 function:

curve(pnorm(x),-3,3)

不是問題。 但我想使用tidyverse package 來做到這一點。 原因是我已經閱讀了兩本涵蓋tidyverse的書,當我繼續在 R 接受教育時,我不妨讓它與我目前所知道的保持同步。 在我所做的一切中,我注意到我從來沒有真正學會如何 plot 概率分布。 因此,使用到目前為止我所擁有的知識,我嘗試了以下內容作為練習:

x = -8:8
norm_cum_table = data.frame(x,pnorm(x))
norm_plot = ggplot(data = norm_cum_table, mapping = aes(x = x)) + geom_line(mapping = aes(y = pnorm(x)))
norm_plot

我成功地得到了一條“看起來”可能是 CDF 的曲線,但它看起來不夠平滑,不符合我的喜好。

做了一些擺弄和更多閱讀,我發現了另一種應用方法:

ggplot(data = norm_cum_table, mapping = aes(x = x)) + stat_function(fun = pnorm, args = list(sd=0.5))

這個版本看起來更流暢一些,但對我來說問題是到目前為止我還沒有真正使用過stat_function() 在我讀過的任何文本中都沒有處理它。

我覺得必須有一種更簡單的方法來 plot 使用Tidyverse的任何概率分布,與我必須做的擺弄量相比以獲得應該是一個簡單的結果。

我想知道還有什么其他方法可以解決這個問題?

?stat_function幫助文件中竊取,該文件也有?geom_function詳細信息,您可以使用:

ggplot() + xlim(-5, 5) + geom_function(fun = pnorm)

這應該適用於用戶定義或已經可用的任何 function。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM