我希望R中有更多知识渊博的人可以提供帮助。
问题:我现在正在尝试用ggplott2绘制威布尔概率图。 2对2因子Weibull在对数图中应显示为一条直线。但这不是笔直的,也不是直线消失的。例如,像这样的https://www.mathworks.com/help/stats/wblplot.html
背景:我正在使用flexsurv和生存软件包进行一些实时计算。但是我想使用ggplot2环境来显示更多信息。最后,我想将故障添加到先前计算中适合的行中。
欢迎提出所有建议。 :)
这是我的示例代码:
library(ggplot2)
ggplot(data.frame(x=c(0,30)), aes(x=x)) +
stat_function(fun = dweibull, args = list(shape = 2, scale = 15))
#coord_trans(x = "log10", y = "log10") # without the option the function appears, but not as straight line
答案 0 :(得分:2)
(从该Matlab示例中)您正在寻找的是一个QQ图,ggplot
可以通过geom_qq
或stat_qq
(在这里的文档:https://ggplot2.tidyverse.org/reference/geom_qq.html)来完成:
ggplot(data.frame(x = rweibull(n = 100, shape = 1.2, scale = 1.5)), aes(sample = x)) +
stat_qq(distribution = stats::qweibull, dparams = list(shape = 1.2, scale = 1.5))
祝你好运!
答案 1 :(得分:0)
感谢您的答复!坦白地说,它并不能完全按照我的预期工作。这不应该说明解决方案的建议,而应说明我对ggplot2采取的方法。
高层目标是生成一个与初始问题中的参考非常相似的Weibull“失效时间”图。这里的解决方案对我来说非常有效:WeibullR,最近在CRAN,http://www.openreliability.org/weibull-r-weibull-analysis-on-r/上可用 它采用的是Robert B. Abernethy博士的“新威布尔手册,第五版”。
我不确定在sackoverflow情况下如何处理答案,因为答案与问题转向不同...
为macOS进行安装需要一些步骤,但我认为,由于图形质量和分析速度的原因,该操作很麻烦:
在终端机中:
brew install gcc
对于macOS,必须使用C ++编译某些模块:若要将R指向正确的编译器,请添加〜/ .R / Makevars
VER=
CC=gcc$(VER)
CXX=g++$(VER)
CFLAGS=-mtune=native -g -O2 -Wall -pedantic -Wconversion
CXXFLAGS=-mtune=native -g -O2 -Wall -pedantic -Wconversion
# In my case
FLIBS=-L/usr/local/Cellar/gcc/8.2.0/lib/gcc/8
在R控制台中:
install.packages("Rcpp")
install.packages("RcppArmadillo")
install.packages("abrem", repos="http://R-Forge.R-project.org")