0

私は、quantmodチャートといくつかの四角形を上にチャート化する関数を試みています。cmdから実行すると正常に動作しますが、関数内にラップすると、四角形のみが表示されるか、グラフのみが表示されるか、どちらも表示されない場合があります。コード例:

f1 <- function() { 
require(quantmod)
s <- get(getSymbols('PRGO'))["2012::"]
chart_Series(s)
u<-par("usr")
d<-data.frame(Buttom=c(100,90),Top=c(110,95))
rect(u[1],d[,'Buttom'],u[2],d[,'Top'],col=rgb(1,0,0,alpha=0.2),border=0)
}
  • plot.new() を実行する必要があるかもしれません
  • 関数からチャートオブジェクトを返して印刷すると機能しますが、チャートオブジェクトと四角形の両方を返す方法が見つかりません(四角形もリストです)
  • 関数が一時的な環境で機能することを理解しています - グローバル環境で関数を実行する方法が見つかりませんでした。グローバル環境でassign四角形にする方法がわかりません。chob
  • 関数は最終的にすべてのプロットを行います-線やラベルなどを追加したい.

ありがとう。

4

1 に答える 1

1

chart_Series()あなたがあなたの中にあなたを包むならば、printそれはうまくいくようですか?

f1 <- function() { 
  require(quantmod)
  s <- get(getSymbols('PRGO'))["2012::"]
  print(chart_Series(s))
  u<-par("usr")
  d<-data.frame(Buttom=c(100,90),Top=c(110,95))
  rect(u[1],d[,'Buttom'],u[2],d[,'Top'],col=rgb(1,0,0,alpha=0.2),border=0)
}

f1()

ここに画像の説明を入力してください

于 2013-02-15T14:06:43.910 に答える