On Mon, Jan 6, 2014 at 4:25 PM, Eric Zivot <ezi...@u.washington.edu> wrote: > I have been working on some examples of plotting time series for my new book > Modeling Financial Time Series with R and I noticed something funny with > plot.xts() from the R package xtsExtra when trying to plot quarterly time > series created from the xts function to.quarterly. Here is an example: > > > >> sessionInfo() > > R version 3.0.2 (2013-09-25) > > Platform: x86_64-w64-mingw32/x64 (64-bit) > > > > locale: > > [1] LC_COLLATE=English_United States.1252 > > [2] LC_CTYPE=English_United States.1252 > > [3] LC_MONETARY=English_United States.1252 > > [4] LC_NUMERIC=C > > [5] LC_TIME=English_United States.1252 > > > > attached base packages: > > [1] stats graphics grDevices utils datasets methods > > [7] base > > > > other attached packages: > > [1] xtsExtra_0.0-1 quantmod_0.4-0 TTR_0.22-0 Defaults_1.1-1 > > [5] xts_0.9-7 zoo_1.7-10 > > > > loaded via a namespace (and not attached): > > [1] grid_3.0.2 lattice_0.20-23 tools_3.0.2 > > > >> getSymbols("GS") > >> GS.Ad.xts = Ad(GS) >> GS.Ad.quarterly.xts = to.quarterly(GS.Ad.xts, OHLC=FALSE) >> periodicity(GS.Ad.quarterly.xts) > Quarterly periodicity from 2007 Q1 to 2014 Q1 >> GS.Ad.quarterly.xts = to.quarterly(GS.Ad.xts, OHLC=FALSE) >> periodicity(GS.Ad.quarterly.xts) > Quarterly periodicity from 2007 Q1 to 2014 Q1 >> head(GS.Ad.quarterly.xts) > GS.Adjusted > 2007 Q1 191.4 > 2007 Q2 201.1 > 2007 Q3 201.5 > 2007 Q4 200.2 > 2008 Q1 154.3 > 2008 Q2 163.4 > Warning message: > timezone of object (UTC) is different than current timezone (). >> class(index(GS.Ad.quarterly.xts)) > [1] "yearqtr" >> # Error in axis format for time plot >> plot(GS.Ad.quarterly.xts, lwd=2, col="blue") > > > > In the resulting plot, the format for the axis is not correct. Instead of > showing the date as "Q1 2007", I see "%b 2007". > > Also, I notice a strange error related to timezones. > > > >> Sys.timezone() > [1] "PST" > > > > Do I have to change my system timezone to UTC prior to downloading the data > to get rid of this error? > <SNIP>
Hi Eric, I'm dealing with lots of timezone problems here that I don't understand. However when I run your code I don't seem to see the same problems. It would have been easier if you supplied just a code snippet to run so please check what I culled from your message to the list. From Stack Overflow I see Joshua saying that for daily data there isn't a time zone. That only matters if your data has something smaller like hours, etc. However I also see people having trouble if there data crosses a Daylight Savings Time change ( I think ) so I'm very confused at the moment. I am not finding the xtsExtra package on CRAN so I'll have to see about R-Forge later. In my case, with my code, below all the data is tzone == "UTC" and I don't get the error you get. I get a plot in blue with no borders or axis or anything. There is a warning message. I have an example of the tzone getting messed up somewhere around using Blotter but I'm trying to whittle it down enough to post a question myself. - Mark library(quantmod) sessionInfo() getSymbols("GS") GS.Ad.xts = Ad(GS) GS.Ad.quarterly.xts = to.quarterly(GS.Ad.xts, OHLC=FALSE) periodicity(GS.Ad.quarterly.xts) GS.Ad.quarterly.xts = to.quarterly(GS.Ad.xts, OHLC=FALSE) periodicity(GS.Ad.quarterly.xts) class(index(GS.Ad.quarterly.xts)) plot(GS.Ad.quarterly.xts, lwd=2, col="blue") Sys.timezone() tzone(GS) tzone(GS.Ad.xts) tzone(GS.Ad.quarterly.xts) > library(quantmod) > > sessionInfo() R version 3.0.2 (2013-09-25) Platform: x86_64-pc-linux-gnu (64-bit) locale: [1] LC_CTYPE=en_US.UTF-8 LC_NUMERIC=C LC_TIME=C LC_COLLATE=C [5] LC_MONETARY=C LC_MESSAGES=C LC_PAPER=C LC_NAME=C [9] LC_ADDRESS=C LC_TELEPHONE=C LC_MEASUREMENT=C LC_IDENTIFICATION=C attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] RMySQL_0.9-3 DBI_0.2-7 blotter_0.8.17 [4] PerformanceAnalytics_1.1.0 FinancialInstrument_1.1.9 quantmod_0.4-1 [7] TTR_0.22-0 Defaults_1.1-1 xts_0.9-7 [10] zoo_1.7-10 loaded via a namespace (and not attached): [1] grid_3.0.2 lattice_0.20-23 tools_3.0.2 > > getSymbols("GS") [1] "GS" > > GS.Ad.xts = Ad(GS) > GS.Ad.quarterly.xts = to.quarterly(GS.Ad.xts, OHLC=FALSE) > periodicity(GS.Ad.quarterly.xts) Quarterly periodicity from 2007 Q1 to 2014 Q1 > > GS.Ad.quarterly.xts = to.quarterly(GS.Ad.xts, OHLC=FALSE) > periodicity(GS.Ad.quarterly.xts) Quarterly periodicity from 2007 Q1 to 2014 Q1 > class(index(GS.Ad.quarterly.xts)) [1] "yearqtr" > plot(GS.Ad.quarterly.xts, lwd=2, col="blue") Error in axis(1, at = xycoords$x, labels = FALSE, col = "#BBBBBB", ...) : formal argument "col" matched by multiple actual arguments > Sys.timezone() [1] "" > tzone(GS) [1] "UTC" > tzone(GS.Ad.xts) [1] "UTC" > tzone(GS.Ad.quarterly.xts) [1] "UTC" _______________________________________________ R-SIG-Finance@r-project.org mailing list https://stat.ethz.ch/mailman/listinfo/r-sig-finance -- Subscriber-posting only. If you want to post, subscribe first. -- Also note that this is not the r-help list where general R questions should go.