ggplot2中的组轴值

时间:2016-05-04 17:49:08

标签: r

我的图表的x轴定义如下:Dmmggyyyy,其中D是char。由于我在打印图表时每年都在工作,因此x轴文本是不可读的。 可以使用从D01012015到D02012015蚀刻的正则表达式和组数据。并称他们为1月,2月...... 我的情节的源代码是:

df <- melt(data)    
pl <- ggplot(df, aes(time, price,group=factor(xxx))) + 
  geom_line(aes(color=factor(xxx)))+
  theme(axis.text.x element_blank())

2 个答案:

答案 0 :(得分:1)

您可以将这些字符串转换为日期格式,例如strptime('D01012015', format = 'D%d%m%Y')

[1] "2015-01-01 CET"

如果您只想要月份,可以使用:months(strptime('D01012015', format = 'D%d%m%Y'))

[1] "januari"

答案 1 :(得分:0)

您可以删除“D”然后转换为日期。我喜欢使用maxLength <- max(sapply(l, length)) as.data.frame(t(sapply(l, function(x) c(x, rep(NA, maxLength - length(x))) ) ) ) 2013 2014 2015 16 20 365 247 17 139 NA NA 18 324 91 NA 19 100 365 313 20 75 316 NA

lubridate

从那里你可以得到几个月,

install.packages('lubridate')
library(lubridate)

df$x <- gsub("D", "", df$x)
df$x <- mdy(df$x)