library(ggplot2)
library(data.table)
data <- data.table(year=c(2009,2009,2009,2009,2010,2010,2010,2010,
2011,2011,2011,2011,2012,2012,2012,2012,2013,2013,2013,2013,
2014,2014,2014,2014,2015,2015,2015,2015),year_quart = c("2009-Q1","2009-Q2",
"2009-Q3","2009-Q4","2010-Q1","2010-Q2","2010-Q3","2010-Q4","2011-Q1","2011-
Q2","2011-Q3","2011-Q4","2012-Q1","2012-Q2","2012-Q3","2012-Q4",
"2013-Q1","2013-Q2","2013-Q3","2013-Q4","2014-Q1","2014-Q2","2014-Q3",
"2014-Q4","2015-Q1","2015-Q2","2015-Q3","2015-Q4"),region = c("EU","EU",
"EU","EU","EU","EU","EU","EU","EU","EU","EU","EU","EU","EU","EU","EU","EU",
"EU","EU","EU","EU","EU","EU","EU","EU","EU","EU","EU"),value = c(390,621,
442,113,586,571,391,432,758,897,696,160,189,567,621,922,402,185,609,812,549,
783,211,974,723,584,745,609))
plot1 <- ggplot(data, aes(factor(year_quart),value, xmin="2009-Q1", xmax="2009-Q4")) +
geom_line(aes(group=region),size=0.4) +
labs(x = "year", y = "value", title = "Title") +
scale_x_discrete(
breaks = unique(data$year_quart),
labels = unique(data$year_quart),
limits = c("2009-Q1","2009-Q2","2009-Q3","2009-Q4","2010-Q1","2010-Q2")
)
因此,通过此代码,我得到了一个看起来还不错的图。但是,如果我交换
limits=c("2009-Q1","2009-Q2","2009-Q3","2009-Q4","2010-Q1","2010-Q2")
与
limits=c("2009-Q1","2009-Q2","2009-Q3","2009-Q4","2010-Q1","2010-Q2","2010-Q3", "2010-Q4","2011-Q1","2011-Q2","2011-Q3","2011-Q4","2012-Q1","2012-Q2","2012-Q3",
"2012-Q4","2013-Q1","2013-Q2","2013-Q3","2013-Q4","2014-Q1","2014-Q2","2014-Q3",
"2014-Q4","2015-Q1","2015-Q2","2015-Q3","2015-Q4"))
我产生了太多的刻度线,无法清晰查看。因此,我理想地希望在一个特定的年份/季度范围内,根据此范围生成特定数量的代码,这些代码可以生成最大数量的(清晰可见的)刻度。
非常感谢!
答案 0 :(得分:0)
如果我们的目标是使刻度线标签更具可读性,则可以随时使用axis.text.x
中的theme
参数来旋转刻度线标签:
ggplot(data, aes(factor(year_quart),value, xmin="2009-Q1", xmax="2009-Q4")) +
geom_line(aes(group=region),size=0.4) +
labs(x = "year", y = "value", title = "Title") +
scale_x_discrete(
breaks = unique(data$year_quart),
labels = unique(data$year_quart),
limits=c("2009-Q1","2009-Q2","2009-Q3","2009-Q4","2010-Q1","2010-Q2","2010-Q3", "2010-Q4","2011-Q1","2011-Q2","2011-Q3","2011-Q4","2012-Q1","2012-Q2","2012-Q3",
"2012-Q4","2013-Q1","2013-Q2","2013-Q3","2013-Q4","2014-Q1","2014-Q2","2014-Q3",
"2014-Q4","2015-Q1","2015-Q2","2015-Q3","2015-Q4")
) +
theme(axis.text.x = element_text(angle = 45))