我收到了以下数据框:
MONTH MINTEREST REGION id
<S3: yearmon> <dbl> <chr> <int>
1 Aug 2010 0.0443 NC 1
2 Sep 2010 0.0432 NC 2
3 Okt 2010 0.0422 NC 3
4 Nov 2010 0.0433 NC 4
5 Dez 2010 0.0475 NC 5
6 Jan 2011 0.0480 NC 6
我使用以下ggplot2代码绘制框架:
ggplot(MINTEREST30, aes(x=MONTH, y=MINTEREST, group=REGION)) +
geom_line(aes(color=REGION),size=1)+
theme_bw()+
theme(legend.position = c(0.8, 0.8)) +
scale_color_manual(values = c("#86BC25","#0076A8","#BBBCBC","#E3E48D","#A0DCFF"))+
scale_y_continuous(labels = scales::percent)+
xlab("Months")+
ylab("Mortgage Rate")
不幸的是,我收到错误:
不知道如何自动选择yearmon类型的对象的比例。 默认为连续。
正如您在上面提供的图形中看到的那样,ggplot会自动将x轴设置为年份。由于我没有任何起点,因为我的数据始于2010年8月。
我的问题是:是否有可能将轴调整到几分之一甚至几个月?
答案 0 :(得分:0)
jazzurro让你走上了正确的道路。我尝试类似的事情:
scale_x_date(date_breaks = "3 months", date_labels = "%b-%y")
答案 1 :(得分:0)
如果p
是问题中ggplot
语句的值,请尝试以下方法之一:
p + scale_x_yearmon(format = "'%y/%m", n = 10)
p + scale_x_yearqtr(format = "%yQ%q", n = 10)
根据看起来不错的内容修改甚至省略格式和n。根据问题中显示的数据,上述选择似乎没问题。可能任何足够大的数字都可以用于n。有关详细信息,请参阅?scale_x_yearmon
。