次の問題があります。私は講義用のプロットを作るための簡単なコードを書いたが、何とか私のプロットにテキストを追加しない。警告もエラーもなく、インターネットで検索したところ、これまで何の解決策も見つけられていなかったと思った。 ご協力いただきありがとうございます。コードは以下のとおりです。短い注意:プロットの他のものは私が望むように動作しますが、それは行方不明のテキスト行です。R:プロットへのテキストの追加が機能しない
編集:ここでの完全なコードは、あなたのコードを実行
libraries = c("dygraphs", "quantmod", "stringr", "ggplot2")
lapply(libraries, function(x) if (!(x %in% installed.packages())) { install.packages(x) })
lapply(libraries, library, quietly = TRUE, character.only = TRUE)
tickers = c("AMZN","GOOG", "MSFT")
end = Sys.Date()
getSymbols(tickers, from = "2017-10-01", to = end)
a = seq(1, 51, by =1)
time = index(AMZN.1)
time = time[a]
time = format(time, format = "%d.%m.")
for (i in 1:3){
assign(paste0(tickers[i], ".1"), Cl(get(tickers[i])))
}
AMZN.2 = as.numeric(AMZN.1)
GOOG.2 = as.numeric(GOOG.1)
MSFT.2 = as.numeric(MSFT.1)
abc = as.numeric(match("27.10.", time))
plot(AMZN.2, type = "l", xlab = "time", ylab = "price (USD, NASDAQ)", xaxs = "i", xaxt = "n", main = "Share price Amazon Inc. (Oct 17 - Dec 17)", sub = "qrtly results announced at oct 26th")
axis(1,a, labels = time) #a is a numeric vector, time a character vector
abline(v = abc, col = "red", lty = "dotted") #abc is a number (=20)
abline(h = 972.43, col = "red", lty = "dotted")
abline(h = 1100.95, col = "red", lty = "dotted")
text(abc, "my text here", col = "red", srt = 90) #abc see above
これは私の経験では、これはグラフ上にプロットされているテキストが現在のスケール外にあることが原因です。たとえば、グラフが(x = 1、y = 1)から(x = 2、y = 2)にしか移動しない場合、座標を(x = 10、y = 10)に設定します。テキストが有効であることを再度確認できますか? – JMenezes
サンプル入力データで[再現可能な例](https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)を提供すると、より簡単にお手伝いできますコードを実行してテストしてください。 – MrFlick
プロットされたベクトル(AMZN.2)の長さは51で、時間ベクトルとaベクトルもあります。 abcの値は20なので、これは収まるはずです。 –