如何在对数刻度上绘制CCDF图?

用户名

我想在对数对数轴上绘制一些模拟的幂律尾部数据的CCDF图,下面是在法线轴上绘制CCDF图的R代码,我在链接上使用了代码:(如何绘制CCDF gragh?

> load("fakedata500.Rda")
> x<-fakedata500
> f<-ecdf(x)
> f
Empirical CDF 
Call: ecdf(x)
 x[1:500] = 0.50174, 0.50307, 0.50383,  ..., 81.674, 140.63
> plot(f)

以下是ECDF图:

在此处输入图片说明

> plot(sort(x), 1-f(sort(x)), type="s", lwd=1)

这条命令给了我CCDF图:

在此处输入图片说明

但是,我想在对数-对数轴上绘制CCDF图,以产生如下图所示的图形:(摘自“最小化识别Lévy飞行器行为的错误”。)

在此处输入图片说明

有没有办法在R中做到这一点?

如果是这样,如何在CCDF图上进行线性回归?我曾尝试使用下面的命令,但这对我不起作用。

a<-plot(sort(x), 1-f(sort(x)), type="s", lwd=1)
> a
NULL
> res=lm(a)
Error in terms.formula(formula, data = data) : 
  argument is not a valid model

非常感谢。


更新:

我使用了@BondedDust提供的代码,并成功生成了CCDF图:

(plot(sort(x) , 1-ecdf(x)(sort(x) ), log="xy"))

在此处输入图片说明

以下是我如何生成数据集的代码:

u<-runif(500)
fakedata500<-((2*(1-u))^(-1))
耶洛华德

这是使用分位数的另一种方法。

library(VGAM)  # for rpareto(...)
set.seed(1)    # for reproducible example
X <- rpareto(1000,location=1,shape=1)
p <- ppoints(100)
par(mfrow=c(1,3))
plot(quantile(X,p=p),p,type="l",ylab="P(X < x)",xlab="x",main="CDF")
plot(quantile(X,p=p),1-p,type="l",ylab="P(X > x)",xlab="x",main="CCDF")
plot(log(quantile(X,p=p)),log(1-p),
     ylab="log[P(X > x)]",xlab="log(x)",main="CCDF: log-log")

这是回归。

df  <- data.frame(x=log(1-p),y=log(quantile(X,p=p)))
fit <- lm(y~x,df)
summary(fit)
# ...
# Coefficients:
#              Estimate Std. Error  t value Pr(>|t|)    
# (Intercept)  0.039559   0.007584    5.216 1.02e-06 ***
# x           -0.944380   0.005427 -174.028  < 2e-16 ***
# ---
# Signif. codes:  0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
# 
# Residual standard error: 0.05317 on 98 degrees of freedom
# Multiple R-squared:  0.9968,  Adjusted R-squared:  0.9967 
# F-statistic: 3.029e+04 on 1 and 98 DF,  p-value: < 2.2e-16

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在R到极值范围内绘制对数刻度密度曲线?

来自分类Dev

如何绘制线性回归到双对数R图?

来自分类Dev

如何在R中用ggplot2绘制的图的y轴刻度中准确显示数字的SI前缀?

来自分类Dev

Y轴在对数刻度上并以gbm.plot为中心

来自分类Dev

如何在matplotlib中创建平方对数对数图?

来自分类Dev

使用ggplot在对数刻度上绘制小中断

来自分类Dev

对数刻度上的闪亮滑块

来自分类Dev

如何使用Matplotlib在对数刻度上显示次要刻度标签

来自分类Dev

在ggplot2中对数据进行方面分析时,如何在刻度上设置不同的中断和标签?

来自分类Dev

在Matlab中使用errorbarxy在对数刻度上的误差线

来自分类Dev

如何在原位绘制刻度值

来自分类Dev

Python:在对数刻度中循环绘制误差线,然后保存图像

来自分类Dev

Python对数刻度上的小提琴绘图麻烦

来自分类Dev

如何对数据框字典进行子图绘制

来自分类Dev

R:如何在功能符号()中使用对数刻度

来自分类Dev

Y轴在对数刻度上并在gbm.plot中居中

来自分类Dev

在对数图matplotlib中删除特定的xaxis刻度标签

来自分类Dev

Matplotlib在对数刻度上倾斜文本?

来自分类Dev

angularJS库,用于绘制对数刻度的条形图

来自分类Dev

如何在matplotlib中的对数轴上设置刻度线

来自分类Dev

Python:在对数刻度中循环绘制误差线,然后保存图像

来自分类Dev

对数刻度上的多个图

来自分类Dev

以对数刻度绘制曲线

来自分类Dev

如何在对数刻度中使用`polygon()`?

来自分类Dev

干净的对数刻度(loglog)图

来自分类Dev

如何使用R图绘制matlab样式对数-对数图

来自分类Dev

R ggplot2:在对数刻度上绘制对角线

来自分类Dev

如何在 matplotlib 中更改对数刻度刻度标签

来自分类Dev

如何在对数据进行排序时更新 RecyclerView?

Related 相关文章

  1. 1

    如何在R到极值范围内绘制对数刻度密度曲线?

  2. 2

    如何绘制线性回归到双对数R图?

  3. 3

    如何在R中用ggplot2绘制的图的y轴刻度中准确显示数字的SI前缀?

  4. 4

    Y轴在对数刻度上并以gbm.plot为中心

  5. 5

    如何在matplotlib中创建平方对数对数图?

  6. 6

    使用ggplot在对数刻度上绘制小中断

  7. 7

    对数刻度上的闪亮滑块

  8. 8

    如何使用Matplotlib在对数刻度上显示次要刻度标签

  9. 9

    在ggplot2中对数据进行方面分析时,如何在刻度上设置不同的中断和标签?

  10. 10

    在Matlab中使用errorbarxy在对数刻度上的误差线

  11. 11

    如何在原位绘制刻度值

  12. 12

    Python:在对数刻度中循环绘制误差线,然后保存图像

  13. 13

    Python对数刻度上的小提琴绘图麻烦

  14. 14

    如何对数据框字典进行子图绘制

  15. 15

    R:如何在功能符号()中使用对数刻度

  16. 16

    Y轴在对数刻度上并在gbm.plot中居中

  17. 17

    在对数图matplotlib中删除特定的xaxis刻度标签

  18. 18

    Matplotlib在对数刻度上倾斜文本?

  19. 19

    angularJS库,用于绘制对数刻度的条形图

  20. 20

    如何在matplotlib中的对数轴上设置刻度线

  21. 21

    Python:在对数刻度中循环绘制误差线,然后保存图像

  22. 22

    对数刻度上的多个图

  23. 23

    以对数刻度绘制曲线

  24. 24

    如何在对数刻度中使用`polygon()`?

  25. 25

    干净的对数刻度(loglog)图

  26. 26

    如何使用R图绘制matlab样式对数-对数图

  27. 27

    R ggplot2:在对数刻度上绘制对角线

  28. 28

    如何在 matplotlib 中更改对数刻度刻度标签

  29. 29

    如何在对数据进行排序时更新 RecyclerView?

热门标签

归档