2

我想在 R 中构建一个三行换行图表,并且想知道是否已经有一个包可以用来执行绘制图表所需的计算,或者更好地同时执行两者,即绘图和计算。

我曾尝试在 rseek.org 上进行搜索,并且还查看了一些财务方案。到目前为止没有运气。

4

1 回答 1

1

不是最干净的代码,但它可能有助于作为进一步开发的基础。closeval代表一些虚拟收盘价。

closeval <- c(50,48,47,47,59,60,57,48,42,50)
cvlag <- c(NA,head(closeval,-1))
dset <- data.frame(closeval,cvlag)
dset <- subset(dset,closeval!=cvlag | is.na(cvlag))
dset$cvlag2 <- c(NA,NA,head(dset$closeval,-2))

plot(dset$closeval)

dset <- dset[2:nrow(dset),]
dset$maxlag <- apply(dset[c("cvlag","cvlag2")],1,max,na.rm=TRUE)
dset$minlag <- apply(dset[c("cvlag","cvlag2")],1,min,na.rm=TRUE)

dset$change <- (dset$closeval-dset$cvlag) > 0

dset$keyval[dset$change==FALSE] <- dset$minlag[dset$change==FALSE]
dset$keyval[dset$change==TRUE] <- dset$maxlag[dset$change==TRUE]

segments(
2:(nrow(dset)+1),
dset$closeval,
2:(nrow(dset)+1),
dset$keyval,
col=ifelse(dset$change==TRUE,"red","blue")
)

在此处输入图像描述

于 2012-06-01T05:44:16.100 回答