- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我如何使用 更多参数正确使用chart_Series?
p.txt
s,n
ABBV,AbbVie
BMY,Bristol
LLY,EliLily
MRK,Merck
PFE,Pfizer
# R --silent --vanilla < sof.r
library(quantmod)
options("getSymbols.warning4.0"=FALSE)
options("getSymbols.yahoo.warning"=FALSE)
# setup chart params
cp <- chart_pars()
cp$cex=0.55
cp$mar=c(1,1,0,0) # B,L,T,R
# setup chart theme
ct <- chart_theme()
ct$format.labels <- ' ' # AG: space needed to remove bottom x-axis labels
ct$lylab <- TRUE # AG: enable left y-axis labels
ct$rylab <- FALSE # AG: remove right y-axis labels
ct$grid.ticks.lwd=1
# read values into vectors
csv <- read.csv("p.txt", stringsAsFactors = FALSE)
symVec <- getSymbols(as.vector(csv$s))
infoVec <- mapply(paste, csv$s, csv$n, sep=": ") # eg. SYM: Name
cpVec = rep(cp, times=nrow(csv))
# create PDF
pdf(file = "p.pdf")
par(mfrow = c( 5, 4 ) )
mapply (chart_Series, mget(symVec), name=infoVec, null, null, null, MoreArgs=cp, MoreArgs=ct)
dev.off()
> mapply (chart_Series, mget(symVec), name=infoVec, null, null, null, MoreArgs=cp, MoreArgs=ct)
Error in mapply(chart_Series, mget(symVec), name = infoVec, null, null, :
formal argument "MoreArgs" matched by multiple actual arguments
Execution halted
最佳答案
错误状态 moreArgs
由多个参数匹配(您在对 MoreArgs
的调用中提供了两个名为 mapply
的参数),这是您的问题。适用于 chart_Series
每次调用的所有参数必须是 一 提供给 moreArgs
的命名列表.
您的 MBY
符号是有问题的,因为它在 2017 年之后有恒定数据或没有数据,最终在调用 chart_Series
时产生错误。 ,所以为了简单起见,我们放弃这个例子,因为处理它是一个与 mapply
无关的极端情况。 .
这就是你如何使用 mapply
在你的例子中:
csv <- data.frame(s = c("ABBV", "MBY", "LLY", "MRK", "PFE"), n = c("AbbVie", "Bristol", "EliLily", "Merck", "Pfizer"))
csv <- csv[-2, ]
symVec <- getSymbols(as.vector(csv$s))
infoVec <- mapply(paste, csv$s, csv$n, sep=": ") # eg. SYM: Name
cpVec = rep(cp, times=nrow(csv))
# Make things a little more interesting in your custom chart theme:
ct$col$up.col<-'darkgreen'
ct$col$dn.col<-'darkred'
par(mfrow = c( 2, 2 ) )
mapply (chart_Series,
# vectorised arguments:
x = mget(symVec), # this is a list of the market data for each symbol, and is consistent with a vectorised argument for `mapply`
name = infoVec, #`simply character vector of the same length as `mget(symVec)`.
# one NAMED list to MoreArgs, with the full names of the arguments in chart_Series you want to complete
MoreArgs = list(pars = cp, theme = ct, subset = "2019"))
关于r - quantmod::chart_Series 和 mapply 给出图表参数错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57023832/
有没有办法用 chart_Series() 生成对数 y 轴?我在 quantmod 中使用实验性的 chart_Series() 而不是 chartSeries() 方法,因为在向情节。 libra
我想在 quantmod::chart_Series() 下方绘制热图。如何将以下热图添加到 chart_Series(或 xts::plot.xts): library(quantmod) # Ge
我想使用 quantmod::chart_Series() 绘制 SPX 图表,并在下面绘制 GDP 变化和 GDP 变化的 12 个月 SMA。无论我如何尝试(我使用什么组合),要么会发生错误,要么
我想在某个图表上的几个日期上添加垂直线。到目前为止我还没有成功完成这个简单的任务。这是我尝试过的: > s d1 d1 [1] "2012-05-24" > chart_Series(s,TA="
我如何使用 更多参数正确使用chart_Series? p.txt s,n ABBV,AbbVie BMY,Bristol LLY,EliLily MRK,Merck PFE,Pfizer sof.r
移除 chart_Series() 的 x 轴标签底部的正确方法是什么? 例如。我想删除“2007 年 1 月 3 日 ... 2018 年 10 月 19 日”,但将年份保留在 x 轴上方。 git
我正在使用新的 chart_Series和 add_TA非常多。它对我来说效果很好,我觉得它非常有用。 我正在尝试在图表上添加一些内容(水平线和一些文本)。这里问题开始出现。正确绘制水平线和文本后,如
我试图在 quantmod::chart_Series() 之上绘制一些支撑/阻力线。问题是有趣的支撑/阻力线超出(低于或高于)直到当前时间的系列数据范围(我还想将图表向右扩展到超出数据的最后一个时间
我是一名优秀的程序员,十分优秀!