Nishant
Nishant

Reputation: 1121

time series plot with x axis ticks in month-year format in R

I am unable to get the x axis to show ticks in format as 'Jan-99' .....

Ny data is as below:

head(rates,10)
    Month Repo_Rate
1  Apr-01      9.00
2  May-01      8.75
3  Jun-01      8.50
4  Jul-01      8.50
5  Aug-01      8.50
6  Sep-01      8.50
7  Oct-01      8.50
8  Nov-01      8.50
9  Dec-01      8.50
10 Jan-02      8.50

sapply(rates,class)
      Month   Repo_Rate 
"character"   "numeric" 

If i convert the 'Month' col in R's Date format, still i dont get the x axis ticks in the required format 'Apr-01'.....

help required here....

Upvotes: 1

Views: 1315

Answers (1)

akrun
akrun

Reputation: 886938

Try

library(xts)

xt1 <- xts(rates$Repo_Rate, order.by = as.yearmon(rates$Month, '%b-%y'))
plot(xt1)

Or using zoo

library(zoo)

z1 <- with(rates, zoo(Repo_Rate, order.by= as.yearmon(Month, '%b-%y')))
plot(z1, xaxt = 'n')
tt <- time(z1)[seq(1, length(z1), by = 2)]
axis(1, tt, format(tt, '%b-%y'), las = 1)

or

library(zoo)
library(ggplot2)

fmt <- "%b-%y"
z <- read.zoo(rates, FUN = as.yearmon, format = fmt)
autoplot(z) + scale_x_yearmon(format = fmt)

Upvotes: 2

Related Questions