我试图建立股票价格图,但我遇到了困难。虽然我已正确返回代码,但我的图例未显示在图表中。我是R的新手,所以我找不到任何错误。
library(quantmod)
library(dplyr)
library(PerformanceAnalytics)
tickers <- c("AAPL", "AMZN" , "MSFT" ,"FB")
portfolioPrices <- NULL
for (Ticker in tickers)
portfolioPrices <- cbind(portfolioPrices,
getSymbols.yahoo(Ticker, from="2017-01-01",
periodicity = "weekly", auto.assign=FALSE)[,4])
portfolioPrices <- portfolioPrices[apply(portfolioPrices,1,function(x) all(!is.na(x))),]
colnames(portfolioPrices) <- tickers
plot(portfolioPrices, legend = tickers)
scaledData <- scale(portfolioPrices)
plot(scaledData, legend = tickers)
我希望这些代号可以作为传说,但它并没有显示出来。帮助将不胜感激。
答案 0 :(得分:1)
尝试使用如下所示的addLegend
命令,它应该可以工作(附件是我桌面的结果):
plot(portfolioPrices)
addLegend("topleft", on=0,
legend.names = tickers,
lty=c(1, 1,1,1), lwd=c(1, 1,1,1)
)
来自文档:
addLegend(legend.loc =“topright”,legend.names = NULL,col = NULL,
ncol = 1,on = 0,...)
legend.loc
legend.loc将图例放入图表上的九个位置之一: bottomright,bottom,bottomleft,left,topleft,top,topright,right, 或中心。
legend.names
图例的名称字符向量。如果为NULL,则列名为 使用当前的绘图对象。
col
填充图例的颜色。如果为NULL,则为当前图的colorset 使用对象数据。
ncol
图例的列数
要绘制的面板编号。如果输入= NA,将绘制一个新面板。该 default,on = 0,将添加到活动面板。活动面板是 定义为执行最近操作的面板。 请注意,仅检查on的第一个元素是否为默认值 要添加到上一个活动面板的行为。
<强>输出:强>