为什么R xts绘图只显示nc=2的单个列?
在一台机器上,plot.xts以两列形式正确显示数据: 另一方面,情况看起来非常不同: 两者的代码相同:为什么R xts绘图只显示nc=2的单个列?,r,plot,xts,R,Plot,Xts,在一台机器上,plot.xts以两列形式正确显示数据: 另一方面,情况看起来非常不同: 两者的代码相同: library(zoo) library(xts) library(xtsExtra) sessionInfo() timezone = "UTC" Sys.setenv(TZ=timezone) sampleData = "Time (UTC),CPU,Runqueue,Blocked,MemoryFree,PageIns,ContextSwitches,Wait,Steal 2014
library(zoo)
library(xts)
library(xtsExtra)
sessionInfo()
timezone = "UTC"
Sys.setenv(TZ=timezone)
sampleData = "Time (UTC),CPU,Runqueue,Blocked,MemoryFree,PageIns,ContextSwitches,Wait,Steal
2014-10-15 16:12:11,20,0,0,12222172,0,2549,0,0
2014-10-15 16:12:12,27,1,0,12220732,0,3619,0,0
2014-10-15 16:12:13,30,0,0,12220212,0,2316,0,0"
data = as.xts(read.zoo(text=sampleData, format="%Y-%m-%d %H:%M:%S", header=TRUE, sep=",", tz=timezone))
plot.xts(data, main="Title", minor.ticks=FALSE, yax.loc="left", auto.grid=TRUE, nc=2)
成功机器的输出:
> library(zoo)
Attaching package: ‘zoo’
The following objects are masked from ‘package:base’:
as.Date, as.Date.numeric
> library(xts)
> library(xtsExtra)
Attaching package: ‘xtsExtra’
The following object is masked from ‘package:xts’:
plot.xts
> sessionInfo()
R version 3.1.2 (2014-10-31)
Platform: x86_64-redhat-linux-gnu (64-bit)
locale:
[1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C
[3] LC_TIME=en_US.UTF-8 LC_COLLATE=en_US.UTF-8
[5] LC_MONETARY=en_US.UTF-8 LC_MESSAGES=en_US.UTF-8
[7] LC_PAPER=en_US.UTF-8 LC_NAME=C
[9] LC_ADDRESS=C LC_TELEPHONE=C
[11] LC_MEASUREMENT=en_US.UTF-8 LC_IDENTIFICATION=C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] xtsExtra_0.0-1 xts_0.9-7 zoo_1.7-11
loaded via a namespace (and not attached):
[1] grid_3.1.2 lattice_0.20-29
... The rest are just commands, no warnings/errors...
故障机器的输出:
> library(zoo)
Attaching package: 'zoo'
The following objects are masked from 'package:base':
as.Date, as.Date.numeric
> library(xts)
> library(xtsExtra)
Attaching package: 'xtsExtra'
The following object is masked from 'package:xts':
plot.xts
> sessionInfo()
R version 3.1.2 (2014-10-31)
Platform: x86_64-redhat-linux-gnu (64-bit)
locale:
[1] C
attached base packages:
[1] stats graphics grDevices utils datasets methods base
other attached packages:
[1] xtsExtra_0.0-1 xts_0.9-7 zoo_1.7-11
loaded via a namespace (and not attached):
[1] grid_3.1.2 lattice_0.20-29
... The rest are just commands, no warnings/errors...
成功的计算机是本地的,而失败的计算机是远程的,export DISPLAY=${IP}:0
到成功的计算机
为什么R xts plot只显示nc=2的单个列?我能够在同一台机器上使用脚本复制不同的结果,但使用的是不同版本的xtsExtra。坏消息是新版本给出了错误的结果。这可能与重构位于的xtsExtra/R/plot.R有关
该软件包是否可能是最近安装在“故障机器”上的 我能够在同一台机器上使用您的脚本复制不同的结果,但是使用了不同版本的xtsExtra。坏消息是新版本给出了错误的结果。这可能与重构位于的xtsExtra/R/plot.R有关 该软件包是否可能是最近安装在“故障机器”上的 正如bergant在中提到的,这是xtsExtra中的一个bug。经过二进制搜索后,修订版#850是最新的有效版本:
$ svn checkout --revision 850 svn://svn.r-forge.r-project.org/svnroot/xts/
$ R
> install.packages("xts/pkg/xts", repos=NULL, type="source")
> install.packages("xts/pkg/xtsExtra", repos=NULL, type="source")
正如bergant在中提到的,这是xtsExtra中的一个bug。经过二进制搜索后,修订版#850是最新的有效版本:
$ svn checkout --revision 850 svn://svn.r-forge.r-project.org/svnroot/xts/
$ R
> install.packages("xts/pkg/xts", repos=NULL, type="source")
> install.packages("xts/pkg/xtsExtra", repos=NULL, type="source")
请参见?xts::plot.xts
,您将注意到yax.loc
或nc
没有参数。plot.xts
代码在去年夏天被重构,现在plot.xts
的开发正在xts包中进行
从R-Forge安装xts rev 875并尝试以下操作,这对我很有用
plot.xts(data, main="Title", multi.panel=TRUE, minor.ticks=FALSE, yax.right=FALSE)
请参见?xts::plot.xts
,您将注意到yax.loc
或nc
没有参数。plot.xts
代码在去年夏天被重构,现在plot.xts
的开发正在xts包中进行
从R-Forge安装xts rev 875并尝试以下操作,这对我很有用
plot.xts(data, main="Title", multi.panel=TRUE, minor.ticks=FALSE, yax.right=FALSE)
嗨,有趣!是的,它是最近安装在“故障机器”上的。有没有旧版本可以下载?确认。我将“好机器”更新为最新的xtsExtra,现在它也坏了:
install.packages(“http://download.r-forge.r-project.org/src/contrib/xtsExtra_0.0-1.tar.gz,repos=NULL,type=“source”)
打开的bug xtsExtra::plot.xts或xts::plot.xts都有nc
和yax.loc
的参数。要在不同面板上绘制多个时间序列,请参见?xts::plot.xts
和multi.panel
参数。虽然数据的范围非常不同,但实际上您使用相同的y轴在同一绘图上绘制了多个时间序列。这就是为什么您会在图表的顶部看到一条线,在底部看到一条线。我将研究如何更改代码以匹配新的API-nc
和yax.loc
,它们曾经存在于xtsExtra中。嗨,很有趣!是的,它是最近安装在“故障机器”上的。有没有旧版本可以下载?确认。我将“好机器”更新为最新的xtsExtra,现在它也坏了:install.packages(“http://download.r-forge.r-project.org/src/contrib/xtsExtra_0.0-1.tar.gz,repos=NULL,type=“source”)
打开的bug xtsExtra::plot.xts或xts::plot.xts都有nc
和yax.loc
的参数。要在不同面板上绘制多个时间序列,请参见?xts::plot.xts
和multi.panel
参数。虽然数据的范围非常不同,但实际上您使用相同的y轴在同一绘图上绘制了多个时间序列。这就是为什么你会在图表的顶部看到一条线,在底部看到一条线。我将研究更改代码以匹配新的API-nc
和yax.loc
,它们曾经存在于xtsExtra中。嗨,罗斯,yax.loc
和nc
都在850版的?xtsexttra::plot.xts
中,因此,似乎发生了重大变化。我将回顾multi.panel
…我签出了版本875并更改为上面的语法,但它不起作用:嗨,罗斯,yax.loc
和nc
都在版本850中的?xtsExtra::plot.xts
中,所以看起来有一个重大变化。我将查看multi.panel
…我签出了修订版875并更改为上面的语法,但它不起作用: