最近,你们帮我格式化了图表的x轴作为日期轴:
R ggplot2: bar chart of a time series
我的数据范围从2006年7月到2016年6月,但R自动使x轴的比例包括2006年全年和2016年全年。这导致图表两端的“空白区域”。我也希望标签有7月20XX而不是每年12月。我尝试使用命令强制它使我的数据适合:
scale_x_date(limits = c(min, max), breaks=date_breaks("12 months"), labels=date_format("%b %Y")) +
但它似乎没有改变任何东西,除了它重新格式化我的标签为Dec 20XX。
答案 0 :(得分:1)
假设g
作为发布到喜欢问题的答案中的情节对象:
dates_vec <- as.Date(rownames(sample), "%m/%d/%Y")
dates_for_breaks <- c(seq.Date(from = min(dates_vec),
to = max(dates_vec), by = "year"), max(dates_vec))
g + scale_x_date(breaks = dates_for_breaks, date_labels = "%b %Y", expand = c(0, 0))
给出
如果您希望每两年使用一次标签:
dates_for_breaks <- c(seq.Date(from = min(dates_vec),
to = max(dates_vec), by = "2 years"), max(dates_vec))