|
View:
New views
6 Messages
—
Rating Filter:
Alert me
|
|
|
two zoo questionsHi,
I have a zoo object with three time series and the corresponding dates. When I plot it, the x-axis contains dates which are not in the object and, naturally, no data points are displayed for these dates. For example, the date "2006-05-20" is not in the object, but it appears in the x-axis of the plot. As a result, I get a plot with 'empty' segments. The object, my code and sessionInfo are copied below. I would like to ask if it is possible to plot only the relevant dates, i.e. to produce a plot without, e.g., the date "2006-05-20". If yes, how could I do it? My second question concerns the way of displaying the dates on the x-axis. Currently, the dates are displayed as "V 22", which stands for "2006-05-22". I would like them to be displayed as "22 05 2006" or "22 May 2006". How can I do this? Thanks for your help! Michal The zoo object, ShorterSpan: PXreturns VaRWHSe099 VaRWHSe095 2006-05-19 -0.6479279 1.878092 1.515232 2006-05-22 -6.1249511 1.878092 1.515232 2006-05-23 2.3501118 1.878092 1.515232 2006-05-24 -4.2859466 2.350112 2.350112 2006-05-25 2.6466856 2.350112 2.350112 2006-05-26 2.5496719 2.646686 2.646686 2006-05-29 -0.7580990 2.646686 2.646686 2006-05-30 -1.9170851 2.646686 2.646686 2006-05-31 -1.8566689 2.646686 2.646686 2006-06-01 1.4198415 2.646686 2.646686 2006-06-02 1.6703232 2.646686 2.646686 2006-06-05 -0.4974407 2.646686 2.646686 2006-06-06 -1.6936396 2.646686 2.646686 2006-06-07 -3.0212406 2.646686 2.646686 2006-06-08 -4.0235989 2.646686 2.646686 2006-06-09 -1.3131054 2.646686 2.646686 2006-06-12 -2.4710858 2.646686 2.646686 2006-06-13 -3.0808024 2.646686 2.646686 2006-06-14 1.9859772 2.646686 2.646686 2006-06-15 7.0481958 2.646686 2.646686 2006-06-16 0.1095805 7.048196 7.048196 2006-06-19 2.4037947 3.583430 7.048196 My code: plot(ShorterSpan, plot.type = "single", type = "p", xlab = "Date", ylab = "", col = list("black", "red", "orange"), pch = c(19,22,23), las = 1) legend.text <- expression(paste("% log returns on PX"), paste("VaR WHS, ", eta, " = 0.99"), paste("VaR WHS, ", eta, " = 0.95")) legend("topleft", legend.text, col=c("black", "red","orange"), pch = c(19,22,23), bty="n", y.intersp = 1.5) sessionInfo() R version 2.6.2 (2008-02-08) i386-pc-mingw32 locale: LC_COLLATE=Slovak_Slovakia.1250;LC_CTYPE=Slovak_Slovakia.1250;LC_MONETARY=Slovak_Slovakia.1250; LC_NUMERIC=C;LC_TIME=Slovak_Slovakia.1250 attached base packages: [1] stats graphics grDevices utils datasets methods base other attached packages: [1] zoo_1.5-2 loaded via a namespace (and not attached): [1] grid_2.6.2 lattice_0.17-6 ____________________________________________________________________________________ [[elided Yahoo spam]] [[alternative HTML version deleted]] _______________________________________________ R-SIG-Finance@... mailing list https://stat.ethz.ch/mailman/listinfo/r-sig-finance -- Subscriber-posting only. -- If you want to post, subscribe first. |
|
|
Re: two zoo questionsOn Fri, 9 May 2008, michal miklovic wrote:
> I have a zoo object with three time series and the corresponding dates. > When I plot it, the x-axis contains dates which are not in the object > and, naturally, no data points are displayed for these dates. For > example, the date "2006-05-20" is not in the object, but it appears in > the x-axis of the plot. As a result, I get a plot with 'empty' segments. I cannot reproduce that problem. For me 2006-05-22 is the first label displayed. In any case, 2006-05-20 is within the range of time(ShorterSpan) so I wouldn't be too surprised if it would appear. If you want fine control over the axis, you can plot(ShorterSpan, ..., axes = FALSE) axis(2) axis.Date(1, time(ShorterSpan), ...) and pass all desired arguments to axis.Date() including "at" and "format". > My second question concerns the way of displaying the dates on the > x-axis. Currently, the dates are displayed as "V 22", which stands for > "2006-05-22". I would like them to be displayed as "22 05 2006" or "22 > May 2006". How can I do this? Either suppress axes and add them by hand afterwards as outlined above, or simply set format = "%d %b %Y" in your plot() call. Both will lead to a couple of warnings but produce the desired result. Best, Z _______________________________________________ R-SIG-Finance@... mailing list https://stat.ethz.ch/mailman/listinfo/r-sig-finance -- Subscriber-posting only. -- If you want to post, subscribe first. |
|
|
Re: two zoo questions1. I can't reproduce your description either. When
I run the following using zoo 1.5-3 and "R version 2.7.0 RC (2008-04-17 r45367)" the labelling on the X axis is May 22, May 27, Jun 01, Jun 06, Jun 11 and Jun 16 and when in the second plot statement (###) we plot the first series using ordinary, not zoo, graphics we get the exact same X axis (as expected) so there is nothing specific to zoo here -- that is how automatic labelling in R works. Maybe your ShorterSpan object is not what you think. Try posting dput(ShorterSpan) or perhaps inspection will make it immediately clear. (Continued after code.) library(zoo) Lines <- " PXreturns VaRWHSe099 VaRWHSe095 2006-05-19 -0.6479279 1.878092 1.515232 2006-05-22 -6.1249511 1.878092 1.515232 2006-05-23 2.3501118 1.878092 1.515232 2006-05-24 -4.2859466 2.350112 2.350112 2006-05-25 2.6466856 2.350112 2.350112 2006-05-26 2.5496719 2.646686 2.646686 2006-05-29 -0.7580990 2.646686 2.646686 2006-05-30 -1.9170851 2.646686 2.646686 2006-05-31 -1.8566689 2.646686 2.646686 2006-06-01 1.4198415 2.646686 2.646686 2006-06-02 1.6703232 2.646686 2.646686 2006-06-05 -0.4974407 2.646686 2.646686 2006-06-06 -1.6936396 2.646686 2.646686 2006-06-07 -3.0212406 2.646686 2.646686 2006-06-08 -4.0235989 2.646686 2.646686 2006-06-09 -1.3131054 2.646686 2.646686 2006-06-12 -2.4710858 2.646686 2.646686 2006-06-13 -3.0808024 2.646686 2.646686 2006-06-14 1.9859772 2.646686 2.646686 2006-06-15 7.0481958 2.646686 2.646686 2006-06-16 0.1095805 7.048196 7.048196 2006-06-19 2.4037947 3.583430 7.048196 " ShorterSpan <- read.zoo(textConnection(Lines), skip = 1, FUN = as.Date) colnames(ShorterSpan) <- read.table(textConnection(Lines), nrow = 1) plot(ShorterSpan, plot.type = "single", type = "p", xlab = "Date", ylab = "", col = list("black", "red", "orange"), pch = c(19,22,23), las = 1) # gives same X axis labelling -- does not use plot.zoo plot(time(ShorterSpan), coredata(ShorterSpan)[,1]) ### 2. Regarding your second question, you can change the format as in the previously posted response or by issuing a custom axis command: plot(ShorterSpan, type = "p", screen = 1, xaxt = "n") ax <- as.Date(axTicks(1)) axis(1, ax, format(ax, "%Y-%m-%d"), cex.axis = 0.7) On Fri, May 9, 2008 at 4:18 AM, michal miklovic <mmiklovic@...> wrote: > Hi, > > I have a zoo object with three time series and the corresponding dates. When I plot it, the x-axis contains dates which are not in the object and, naturally, no data points are displayed for these dates. For example, the date "2006-05-20" is not in the object, but it appears in the x-axis of the plot. As a result, I get a plot with 'empty' segments. The object, my code and sessionInfo are copied below. > I would like to ask if it is possible to plot only the relevant dates, i.e. to produce a plot without, e.g., the date "2006-05-20". If yes, how could I do it? > > My second question concerns the way of displaying the dates on the x-axis. Currently, the dates are displayed as "V 22", which stands for "2006-05-22". I would like them to be displayed as "22 05 2006" or "22 May 2006". How can I do this? > > Thanks for your help! > > Michal > > > The zoo object, ShorterSpan: > PXreturns VaRWHSe099 VaRWHSe095 > 2006-05-19 -0.6479279 1.878092 1.515232 > 2006-05-22 -6.1249511 1.878092 1.515232 > 2006-05-23 2.3501118 1.878092 1.515232 > 2006-05-24 -4.2859466 2.350112 2.350112 > 2006-05-25 2.6466856 2.350112 2.350112 > 2006-05-26 2.5496719 2.646686 2.646686 > 2006-05-29 -0.7580990 2.646686 2.646686 > 2006-05-30 -1.9170851 2.646686 2.646686 > 2006-05-31 -1.8566689 2.646686 2.646686 > 2006-06-01 1.4198415 2.646686 2.646686 > 2006-06-02 1.6703232 2.646686 2.646686 > 2006-06-05 -0.4974407 2.646686 2.646686 > 2006-06-06 -1.6936396 2.646686 2.646686 > 2006-06-07 -3.0212406 2.646686 2.646686 > 2006-06-08 -4.0235989 2.646686 2.646686 > 2006-06-09 -1.3131054 2.646686 2.646686 > 2006-06-12 -2.4710858 2.646686 2.646686 > 2006-06-13 -3.0808024 2.646686 2.646686 > 2006-06-14 1.9859772 2.646686 2.646686 > 2006-06-15 7.0481958 2.646686 2.646686 > 2006-06-16 0.1095805 7.048196 7.048196 > 2006-06-19 2.4037947 3.583430 7.048196 > > My code: > > plot(ShorterSpan, plot.type = "single", type = "p", xlab = "Date", ylab = "", > col = list("black", "red", "orange"), pch = c(19,22,23), las = 1) > legend.text <- expression(paste("% log returns on PX"), > paste("VaR WHS, ", eta, " = 0.99"), paste("VaR WHS, ", eta, " = 0.95")) > legend("topleft", legend.text, col=c("black", "red","orange"), pch = c(19,22,23), > bty="n", y.intersp = 1.5) > > > sessionInfo() > > R version 2.6.2 (2008-02-08) > i386-pc-mingw32 > > locale: > LC_COLLATE=Slovak_Slovakia.1250;LC_CTYPE=Slovak_Slovakia.1250;LC_MONETARY=Slovak_Slovakia.1250; > LC_NUMERIC=C;LC_TIME=Slovak_Slovakia.1250 > > attached base packages: > [1] stats graphics grDevices utils datasets methods base > > other attached packages: > [1] zoo_1.5-2 > > loaded via a namespace (and not attached): > [1] grid_2.6.2 lattice_0.17-6 > > > > ____________________________________________________________________________________ > > [[elided Yahoo spam]] > [[alternative HTML version deleted]] > > _______________________________________________ > R-SIG-Finance@... mailing list > https://stat.ethz.ch/mailman/listinfo/r-sig-finance > -- Subscriber-posting only. > -- If you want to post, subscribe first. > _______________________________________________ R-SIG-Finance@... mailing list https://stat.ethz.ch/mailman/listinfo/r-sig-finance -- Subscriber-posting only. -- If you want to post, subscribe first. |
|
|
|
|
|
Re: two zoo questionsOn Fri, May 9, 2008 at 8:21 AM, michal miklovic <mmiklovic@...> wrote:
> Hi, > > thanks for your prompt responses. > I am sorry for not being clear in my first question. The date "2006-05-20" > was not displayed in my plot but the x-axis contained a corresponding 'slot' > although the date is not in the zoo object. Similarly, the date "Jun 11" is > displayed but there are no observation for this date. > I would like my x-axis to contain only the dates that are in the object. In > other words, I do not want my plot to have empty segments, which arise from > adding dates without observations to the x-axis. Is this possible? By "empty segments" do you mean you just want to plot the data against 1, 2, 3, ... and then label successive times as format(time(ShorterSpan), "...") on the X axis? If that is it then try this: s <- zoo(coredata(ShorterSpan)) plot(s, screens = 1, type = "p", col = 1:3, xaxt = "n") axis(1, time(s), format(time(ShorterSpan), "%m-%d"), cex.axis = 0.5) > > Concerning my second question, your suggestions worked fine. > > Thanks again for your help. > > Best regards, > > Michal > > > 'dput' output: > > structure(c(-0.647927859775788, -6.12495112247933, 2.35011183030576, > -4.28594659156438, 2.64668558870609, 2.54967191535274, -0.758099006348889, > -1.91708512600499, -1.85666892546967, 1.41984151778516, 1.67032322347964, > -0.49744067461619, -1.69363956562325, -3.02124058139697, -4.02359885185390, > -1.31310542630114, -2.47108579725168, -3.08080237199411, 1.98597717860372, > 7.04819583250611, 0.10958047433407, 2.40379468330145, 1.87809239730186, > 1.87809239730186, 1.87809239730186, 2.35011183030576, 2.35011183030576, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 7.04819583250611, > 3.58343037136928, 1.51523152190878, 1.51523152190878, 1.51523152190878, > 2.35011183030576, 2.35011183030576, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 7.04819583250611, 7.04819583250611), .Dim = c(22L, > 3L), .Dimnames = list(NULL, c("PXreturns", "VaRWHSe099", "VaRWHSe095" > )), index = structure(c(13287, 13290, 13291, 13292, 13293, 13294, > 13297, 13298, 13299, 13300, 13301, 13304, 13305, 13306, 13307, > 13308, 13311, 13312, 13313, 13314, 13315, 13318), class = "Date"), class = > "zoo") > > > > ----- Original Message ---- > From: Gabor Grothendieck <ggrothendieck@...> > To: michal miklovic <mmiklovic@...> > Cc: r-sig-finance@... > Sent: Friday, May 9, 2008 1:12:19 PM > Subject: Re: [R-SIG-Finance] two zoo questions > > 1. I can't reproduce your description either. When > I run the following using zoo 1.5-3 and "R version 2.7.0 RC > (2008-04-17 r45367)" > the labelling on the X axis is May 22, May 27, Jun 01, Jun 06, Jun 11 and > Jun 16 > and when in the second plot statement (###) we plot the first series > using ordinary, > not zoo, graphics we get the exact same X axis (as expected) so there is > nothing > specific to zoo here -- that is how automatic labelling in R works. > > Maybe your ShorterSpan object is not what you think. Try posting > dput(ShorterSpan) or perhaps inspection will make it immediately clear. > (Continued after code.) > > library(zoo) > Lines <- " PXreturns VaRWHSe099 VaRWHSe095 > 2006-05-19 -0.6479279 1.878092 1.515232 > 2006-05-22 -6.1249511 1.878092 1.515232 > 2006-05-23 2.3501118 1.878092 1.515232 > 2006-05-24 -4.2859466 2.350112 2.350112 > 2006-05-25 2.6466856 2.350112 2.350112 > 2006-05-26 2.5496719 2.646686 2.646686 > 2006-05-29 -0.7580990 2.646686 2.646686 > 2006-05-30 -1.9170851 2.646686 2.646686 > 2006-05-31 -1.8566689 2.646686 2.646686 > 2006-06-01 1.4198415 2.646686 2.646686 > 2006-06-02 1.6703232 2.646686 2.646686 > 2006-06-05 -0.4974407 2.646686 2.646686 > 2006-06-06 -1.6936396 2.646686 2.646686 > 2006-06-07 -3.0212406 2.646686 2.646686 > 2006-06-08 -4.0235989 2.646686 2.646686 > 2006-06-09 -1.3131054 2.646686 2.646686 > 2006-06-12 -2.4710858 2.646686 2.646686 > 2006-06-13 -3.0808024 2.646686 2.646686 > 2006-06-14 1.9859772 2.646686 2.646686 > 2006-06-15 7.0481958 2.646686 2.646686 > 2006-06-16 0.1095805 7.048196 7.048196 > 2006-06-19 2.4037947 3.583430 7.048196 > " > ShorterSpan <- read.zoo(textConnection(Lines), skip = 1, FUN = as.Date) > colnames(ShorterSpan) <- read.table(textConnection(Lines), nrow = 1) > > plot(ShorterSpan, plot.type = "single", type = "p", xlab = "Date", ylab = > "", > col = list("black", "red", "orange"), pch = c(19,22,23), las = 1) > > # gives same X axis labelling -- does not use plot.zoo > plot(time(ShorterSpan), coredata(ShorterSpan)[,1]) ### > > > 2. Regarding your second question, you can change the format as in the > previously posted response or by issuing a custom axis command: > > plot(ShorterSpan, type = "p", screen = 1, xaxt = "n") > ax <- as.Date(axTicks(1)) > axis(1, ax, format(ax, "%Y-%m-%d"), cex.axis = 0.7) > > > > On Fri, May 9, 2008 at 4:18 AM, michal miklovic <mmiklovic@...> wrote: >> Hi, >> >> I have a zoo object with three time series and the corresponding dates. >> When I plot it, the x-axis contains dates which are not in the object and, >> naturally, no data points are displayed for these dates. For example, the >> date "2006-05-20" is not in the object, but it appears in the x-axis of the >> plot. As a result, I get a plot with 'empty' segments. The object, my code >> and sessionInfo are copied below. >> I would like to ask if it is possible to plot only the relevant dates, >> i.e. to produce a plot without, e.g., the date "2006-05-20". If yes, how >> could I do it? >> >> My second question concerns the way of displaying the dates on the x-axis. >> Currently, the dates are displayed as "V 22", which stands for "2006-05-22". >> I would like them to be displayed as "22 05 2006" or "22 May 2006". How can >> I do this? >> >> Thanks for your help! >> >> Michal >> >> >> The zoo object, ShorterSpan: >> PXreturns VaRWHSe099 VaRWHSe095 >> 2006-05-19 -0.6479279 1.878092 1.515232 >> 2006-05-22 -6.1249511 1.878092 1.515232 >> 2006-05-23 2.3501118 1.878092 1.515232 >> 2006-05-24 -4.2859466 2.350112 2.350112 >> 2006-05-25 2.6466856 2.350112 2.350112 >> 2006-05-26 2.5496719 2.646686 2.646686 >> 2006-05-29 -0.7580990 2.646686 2.646686 >> 2006-05-30 -1.9170851 2.646686 2.646686 >> 2006-05-31 -1.8566689 2.646686 2.646686 >> 2006-06-01 1.4198415 2.646686 2.646686 >> 2006-06-02 1.6703232 2.646686 2.646686 >> 2006-06-05 -0.4974407 2.646686 2.646686 >> 2006-06-06 -1.6936396 2.646686 2.646686 >> 2006-06-07 -3.0212406 2.646686 2.646686 >> 2006-06-08 -4.0235989 2.646686 2.646686 >> 2006-06-09 -1.3131054 2.646686 2.646686 >> 2006-06-12 -2.4710858 2.646686 2.646686 >> 2006-06-13 -3.0808024 2.646686 2.646686 >> 2006-06-14 1.9859772 2.646686 2.646686 >> 2006-06-15 7.0481958 2.646686 2.646686 >> 2006-06-16 0.1095805 7.048196 7.048196 >> 2006-06-19 2.4037947 3.583430 7.048196 >> >> My code: >> >> plot(ShorterSpan, plot.type = "single", type = "p", xlab = "Date", ylab = >> "", >> col = list("black", "red", "orange"), pch = c(19,22,23), las = 1) >> legend.text <- expression(paste("% log returns on PX"), >> paste("VaR WHS, ", eta, " = 0.99"), paste("VaR WHS, ", eta, " = 0.95")) >> legend("topleft", legend.text, col=c("black", "red","orange"), pch = >> c(19,22,23), >> bty="n", y.intersp = 1.5) >> >> >> sessionInfo() >> >> R version 2.6.2 (2008-02-08) >> i386-pc-mingw32 >> >> locale: >> >> LC_COLLATE=Slovak_Slovakia.1250;LC_CTYPE=Slovak_Slovakia.1250;LC_MONETARY=Slovak_Slovakia.1250; >> LC_NUMERIC=C;LC_TIME=Slovak_Slovakia.1250 >> >> attached base packages: >> [1] stats graphics grDevices utils datasets methods base >> >> other attached packages: >> [1] zoo_1.5-2 >> >> loaded via a namespace (and not attached): >> [1] grid_2.6.2 lattice_0.17-6 >> >> >> >> >> ____________________________________________________________________________________ >> >> [[elided Yahoo spam]] >> [[alternative HTML version deleted]] >> >> _______________________________________________ >> R-SIG-Finance@... mailing list >> https://stat.ethz.ch/mailman/listinfo/r-sig-finance >> -- Subscriber-posting only. >> -- If you want to post, subscribe first. >> > > ________________________________ > Be a better friend, newshound, and know-it-all with Yahoo! Mobile. Try it > now. _______________________________________________ R-SIG-Finance@... mailing list https://stat.ethz.ch/mailman/listinfo/r-sig-finance -- Subscriber-posting only. -- If you want to post, subscribe first. |
|
|
Re: two zoo questionsOn Fri, 9 May 2008, michal miklovic wrote:
> Hi, > > thanks for your prompt responses. > I am sorry for not being clear in my first question. The date > "2006-05-20" was not displayed in my plot but the x-axis contained a > corresponding 'slot' although the date is not in the zoo object. > Similarly, the date "Jun 11" is displayed but there are no observation > for this date. Gabor explained why this happens. When you do a scatter plot of plot(c(1, 2, 4), rnorm(3)) There is also 3 in the range of the x-axis although there are no observations for this. > I would like my x-axis to contain only the dates that are in the object. > In other words, I do not want my plot to have empty segments, which arise > from adding dates without observations to the x-axis. Is this possible? I still don't understand what empty segments really means. But I have the suspsicion you want something like: plot(1:nrow(ShorterSpan), ShorterSpan[,1], xaxt = "n") axis(1, at = 1:nrow(ShorterSpan), labels = format(time(ShorterSpan), "%d %b %Y")) which is not really a time series plot... hth, Z > Concerning my second question, your suggestions worked fine. > > Thanks again for your help. > > Best regards, > > Michal > > > 'dput' output: > > structure(c(-0.647927859775788, -6.12495112247933, 2.35011183030576, > -4.28594659156438, 2.64668558870609, 2.54967191535274, -0.758099006348889, > -1.91708512600499, -1.85666892546967, 1.41984151778516, 1.67032322347964, > -0.49744067461619, -1.69363956562325, -3.02124058139697, -4.02359885185390, > -1.31310542630114, -2.47108579725168, -3.08080237199411, 1.98597717860372, > 7.04819583250611, 0.10958047433407, 2.40379468330145, 1.87809239730186, > 1.87809239730186, 1.87809239730186, 2.35011183030576, 2.35011183030576, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 7.04819583250611, > 3.58343037136928, 1.51523152190878, 1.51523152190878, 1.51523152190878, > 2.35011183030576, 2.35011183030576, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 2.64668558870609, 2.64668558870609, 2.64668558870609, > 2.64668558870609, 7.04819583250611, 7.04819583250611), .Dim = c(22L, > 3L), .Dimnames = list(NULL, c("PXreturns", "VaRWHSe099", "VaRWHSe095" > )), index = structure(c(13287, 13290, 13291, 13292, 13293, 13294, > 13297, 13298, 13299, 13300, 13301, 13304, 13305, 13306, 13307, > 13308, 13311, 13312, 13313, 13314, 13315, 13318), class = "Date"), class = "zoo") > > > > > ----- Original Message ---- > From: Gabor Grothendieck <ggrothendieck@...> > To: michal miklovic <mmiklovic@...> > Cc: r-sig-finance@... > Sent: Friday, May 9, 2008 1:12:19 PM > Subject: Re: [R-SIG-Finance] two zoo questions > > 1. I can't reproduce your description either. When > I run the following using zoo 1.5-3 and "R version 2.7.0 RC > (2008-04-17 r45367)" > the labelling on the X axis is May 22, May 27, Jun 01, Jun 06, Jun 11 and Jun 16 > and when in the second plot statement (###) we plot the first series > using ordinary, > not zoo, graphics we get the exact same X axis (as expected) so there is nothing > specific to zoo here -- that is how automatic labelling in R works. > > Maybe your ShorterSpan object is not what you think. Try posting > dput(ShorterSpan) or perhaps inspection will make it immediately clear. > (Continued after code.) > > library(zoo) > Lines <- " PXreturns VaRWHSe099 VaRWHSe095 > 2006-05-19 -0.6479279 1.878092 1.515232 > 2006-05-22 -6.1249511 1.878092 1.515232 > 2006-05-23 2.3501118 1.878092 1.515232 > 2006-05-24 -4.2859466 2.350112 2.350112 > 2006-05-25 2.6466856 2.350112 2.350112 > 2006-05-26 2.5496719 2.646686 2.646686 > 2006-05-29 -0.7580990 2.646686 2.646686 > 2006-05-30 -1.9170851 2.646686 2.646686 > 2006-05-31 -1.8566689 2.646686 2.646686 > 2006-06-01 1.4198415 2.646686 2.646686 > 2006-06-02 1.6703232 2.646686 2.646686 > 2006-06-05 -0.4974407 2.646686 2.646686 > 2006-06-06 -1.6936396 2.646686 2.646686 > 2006-06-07 -3.0212406 2.646686 2.646686 > 2006-06-08 -4.0235989 2.646686 2.646686 > 2006-06-09 -1.3131054 2.646686 2.646686 > 2006-06-12 -2.4710858 2.646686 2.646686 > 2006-06-13 -3.0808024 2.646686 2.646686 > 2006-06-14 1.9859772 2.646686 2.646686 > 2006-06-15 7.0481958 2.646686 2.646686 > 2006-06-16 0.1095805 7.048196 7.048196 > 2006-06-19 2.4037947 3.583430 7.048196 > " > ShorterSpan <- read.zoo(textConnection(Lines), skip = 1, FUN = as.Date) > colnames(ShorterSpan) <- read.table(textConnection(Lines), nrow = 1) > > plot(ShorterSpan, plot.type = "single", type = "p", xlab = "Date", ylab = "", > col = list("black", "red", "orange"), pch = c(19,22,23), las = 1) > > # gives same X axis labelling -- does not use plot.zoo > plot(time(ShorterSpan), coredata(ShorterSpan)[,1]) ### > > > 2. Regarding your second question, you can change the format as in the > previously posted response or by issuing a custom axis command: > > plot(ShorterSpan, type = "p", screen = 1, xaxt = "n") > ax <- as.Date(axTicks(1)) > axis(1, ax, format(ax, "%Y-%m-%d"), cex.axis = 0.7) > > > > On Fri, May 9, 2008 at 4:18 AM, michal miklovic <mmiklovic@...> wrote: > > Hi, > > > > I have a zoo object with three time series and the corresponding dates. When I plot it, the x-axis contains dates which are not in the object and, naturally, no data points are displayed for these dates. For example, the date "2006-05-20" is not in the object, but it appears in the x-axis of the plot. As a result, I get a plot with 'empty' segments. The object, my code and sessionInfo are copied below. > > I would like to ask if it is possible to plot only the relevant dates, i.e. to produce a plot without, e.g., the date "2006-05-20". If yes, how could I do it? > > > > My second question concerns the way of displaying the dates on the x-axis. Currently, the dates are displayed as "V 22", which stands for "2006-05-22". I would like them to be displayed as "22 05 2006" or "22 May 2006". How can I do this? > > > > Thanks for your help! > > > > Michal > > > > > > The zoo object, ShorterSpan: > > PXreturns VaRWHSe099 VaRWHSe095 > > 2006-05-19 -0.6479279 1.878092 1.515232 > > 2006-05-22 -6.1249511 1.878092 1.515232 > > 2006-05-23 2.3501118 1.878092 1.515232 > > 2006-05-24 -4.2859466 2.350112 2.350112 > > 2006-05-25 2.6466856 2.350112 2.350112 > > 2006-05-26 2.5496719 2.646686 2.646686 > > 2006-05-29 -0.7580990 2.646686 2.646686 > > 2006-05-30 -1.9170851 2.646686 2.646686 > > 2006-05-31 -1.8566689 2.646686 2.646686 > > 2006-06-01 1.4198415 2.646686 2.646686 > > 2006-06-02 1.6703232 2.646686 2.646686 > > 2006-06-05 -0.4974407 2.646686 2.646686 > > 2006-06-06 -1.6936396 2.646686 2.646686 > > 2006-06-07 -3.0212406 2.646686 2.646686 > > 2006-06-08 -4.0235989 2.646686 2.646686 > > 2006-06-09 -1.3131054 2.646686 2.646686 > > 2006-06-12 -2.4710858 2.646686 2.646686 > > 2006-06-13 -3.0808024 2.646686 2.646686 > > 2006-06-14 1.9859772 2.646686 2.646686 > > 2006-06-15 7.0481958 2.646686 2.646686 > > 2006-06-16 0.1095805 7.048196 7.048196 > > 2006-06-19 2.4037947 3.583430 7.048196 > > > > My code: > > > > plot(ShorterSpan, plot.type = "single", type = "p", xlab = "Date", ylab = "", > > col = list("black", "red", "orange"), pch = c(19,22,23), las = 1) > > legend.text <- expression(paste("% log returns on PX"), > > paste("VaR WHS, ", eta, " = 0.99"), paste("VaR WHS, ", eta, " = 0.95")) > > legend("topleft", legend.text, col=c("black", "red","orange"), pch = c(19,22,23), > > bty="n", y.intersp = 1.5) > > > > > > sessionInfo() > > > > R version 2.6.2 (2008-02-08) > > i386-pc-mingw32 > > > > locale: > > LC_COLLATE=Slovak_Slovakia.1250;LC_CTYPE=Slovak_Slovakia.1250;LC_MONETARY=Slovak_Slovakia.1250; > > LC_NUMERIC=C;LC_TIME=Slovak_Slovakia.1250 > > > > attached base packages: > > [1] stats graphics grDevices utils datasets methods base > > > > other attached packages: > > [1] zoo_1.5-2 > > > > loaded via a namespace (and not attached): > > [1] grid_2.6.2 lattice_0.17-6 > > > > > > > > ____________________________________________________________________________________ > > > > [[elided Yahoo spam]] > > [[alternative HTML version deleted]] > > > > _______________________________________________ > > R-SIG-Finance@... mailing list > > https://stat.ethz.ch/mailman/listinfo/r-sig-finance > > -- Subscriber-posting only. > > -- If you want to post, subscribe first. > > > > > > ____________________________________________________________________________________ > Be a better friend, newshound, and > know-it-all with Yahoo! Mobile. Try it now. http://mobile.yahoo.com/;_ylt=Ahu06i62sR8HDtDypao8Wcj9tAcJ _______________________________________________ R-SIG-Finance@... mailing list https://stat.ethz.ch/mailman/listinfo/r-sig-finance -- Subscriber-posting only. -- If you want to post, subscribe first. |
| Free Forum Powered by Nabble | Forum Help |