2012-06-17 53 views
2

我想使用barplot()绘制时间序列xts对象。但是,x轴上显示的日期格式是数字值,而不是日期格式。如何将数值更改为日期格式,如“2012-06-12”?下面是一个例子代码:如何在barplot中将日期格式从值更改为日期

x<-rnorm(100); 
y <- xts(x, Sys.Date()+1:100); 
barplot(y); 
+1

我尝试了3个不同操作系统的代码,像你希望所有有格式的日期。请将'sessionInfo()'的输出添加到您的问题 – GSee

+0

感谢GSee。我的sessionInfo()ISR版本2.15.0(2012-03-30) 平台:x86_64的-PC-的mingw32/64(64位) 区域设置: [1] = LC_COLLATE中国(传统)_Taiwan.950 [ 2] LC_CTYPE =中国(传统)_Taiwan.950 [3] = LC_MONETARY中国(传统)_Taiwan.950 [4] LC_NUMERIC = C [5] LC_TIME = C – toddleR

回答

2

通用的解决方案是使用names.arg说法,但正如我在我的评论说,我不能和你提供的代码重现您的问题。

barplot(y, names.arg=format(index(y), "%Y-%m-%d")) 
+0

不知的可能原因可能是环境设置。我不知道。 – toddleR

+0

@ user1461289是的,它可能是语言环境。你是否按照我的答案使用'names.arg'参数来查看日期? – GSee

+0

是的,在我遵循你的建议后,我得到了我想要的结果。谢谢你的帮助。 – toddleR