Java在Quant应用_java – 如何绘制quantil band(在R中)

很高兴见到这里的Debian老朋友:)你的答案已经相当不错了.由于我碰巧在时间序列中工作很多,我以为我会使用优秀的

zoo和

xts套件投入一个变体.后者建立在前者之上,除了其他功能之外,还有我们可以在这里使用的period.apply()函数以及endpoints()函数来获得两小时的聚合.

所以在顶部,我会使用

library(zoo) # for zoo objects

library(xts) # for period.apply

gcdata

header=TRUE, sep=",", dec=".")

timestamps

as.POSIXct(strptime("2012-01-01 00:00:00",

format="%Y-%m-%d %H:%M:%S"))

gcdatazoo

创建一个动物园对象.你的功能仍然是:

plotAreaCorridor

x.pol

y.pol

plot(x, y[,6]+1, type="n", ...)

polygon(x.pol, y.pol, col=col.poly1, lty=0)

x.pol

y.pol

polygon(x.pol, y.pol, col=col.poly2, lty=0)

lines(x, y[,3], col="blue") # median

lines(x, y[,6], col="red") # max

invisible(NULL)

}

然后我们可以简化一点:

agg

INDEX=endpoints(gcdatazoo, "hours", k=2), # every 2 hours

FUN=function(x) quantile(x, # what fun.

probs=c(5,20,50,80,95,100)/100))

#v99 = q99(gcdata$Pause.s.) # what is q99 ?

v99

plotAreaCorridor(index(agg), # use time index as x axis

coredata(agg), # and matrix part of zoo object as data

ylim=c(0,max(agg[,5])*1.5),

ylab="Quantiles of GC events",

main="NewPar Collection Activity")

abline(h=median(gcdatazoo[,"Pause.s."]), col="lightblue")

abline(h=v99, col="grey")

labeltxt

text(x=index(agg)[20], y=1.5*v99, labeltxt, col="grey", pos=3) # or legend()

这使

轴现在是自动的,只显示工作日,因为跨度小于一周;这可以根据需要覆盖.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值