R-自画蜡烛图R CandleChart
2014-01-06 17:15
239 查看
getCandleChart<-function(x,theme='white'){
x<-na.omit(x) xax<-x$DATETIME print(paste("xax[1]=",xax[1])) Opens <- as.numeric(x$Open) Highs <- as.numeric(x$High) Lows <- as.numeric(x$Low) Closes <- as.numeric(x$Close) #x,y取值范围 xrange<- c(min(xax),max(xax)) yrange <- c(min(Lows, na.rm = TRUE), max(Highs, na.rm = TRUE)) #蜡烛宽度 spacing <- 1 length <- nrow(x) #颜色 bg.col="white" fg.col="white" dn.col="green" up.col="red" bar.border="black" x.pos <- xax
#par(bg=bg.col,col.axis=fg.col,fg=fg.col) # create scale of main plot window plot.new() plot.window(xlim=c(xrange[1],xrange[2]),ylim=c(yrange[1],yrange[2])) #颜色 bar.col <- ifelse(Opens < Closes,dn.col,up.col) bar.border <- bar.border #上下影线及矩形实体边界颜色 segments(x.pos,Lows,x.pos,apply(cbind(Opens,Closes),1,min),col=bar.border) #蜡烛下影线 segments(x.pos,Highs,x.pos,apply(cbind(Opens,Closes),1,max),col=bar.border) #蜡烛上影线 rect(x.pos-spacing/3,Opens,x.pos+spacing/3,Closes,col=bar.col,border=bar.border) #蜡烛实体 axis(1,at=x.pos,labels=format(xax,format="%H:%M:%S")) axis(2) box(col=bar.border) }
相关文章推荐
- 向大家推荐一个收集整理正则表达式的网站
- 处理Plot rendering error
- 20120919_01
- 20120919_02
- 20120919_3
- Review JDBC
- Win2003SN
- 解决rJava无法找到jvm.dll的问题
- How to configure a RPC Client Access
- R的若干基因及争论
- [转]matlab中plot用法
- Linux Mint安装最新版R
- R NOTE -- learn intro
- MB Star Astrology comprises of Star Sign
- matlab
- Matlab plot函数使用方法
- MATLAB-数据可视化笔记
- R multcomp Tukey-Kramer
- Fast ways in R to get the first row of a data frame grouped by an identifier
- Tukey honest significance test for unequal sample sizes