2

R で3 つの折れ線グラフを作成したいのですが、グラフを描画するために必要な計算を実行するために使用できるパッケージが既にあるかどうか、またはプロットと計算の両方を行う方がよいかどうか疑問に思っていました。

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 に答える