r - 在 x 轴上绘制月份下方的年份
解决方案
1)一种简单的方法是将年份放在每年一月的下方(或者使用六月,例如,如果您希望年份居中 - 即在下面的代码中将 1 替换为 6)。另一种方法是使用%Y
代替. 将一月替换为年份%b\n%Y
。
首先介绍一些测试数据——这通常应该在问题中完成,但我这次提供了一些。x
测试数据框的列d
是类的"yearmon"
并且y
是数字的。我假设问题中 X 轴上的数字旨在代表月份,但如果它们打算成为季度,那么从"yearqtr"
班级开始并使用scale_x_yearqtr
适当的调整来代替。
library(ggplot2)
library(zoo)
d <- data.frame(x = as.yearmon("2000-1") + 0:23/12, y = 1:24) # test data
x <- d$x
autoplot(d)
ggplot(d, aes(x, y)) +
geom_line() +
geom_point() +
scale_x_yearmon(breaks = x, lab = format(x, ifelse(cycle(x) == 1, "%b\n%Y", "%b")))
2)或者如果您从动物园对象开始z
:
z <- read.zoo(d)
x <- time(z)
autoplot(z, geom = c("line", "point")) +
scale_x_yearmon(breaks = x, lab = format(x, ifelse(cycle(x) == 1, "%b\n%Y", "%b"))) +
xlab("")
推荐阅读
- azure-devops - 将新开发人员添加到 devops 团队
- c# - 在 Azure 函数中缺少注册时依赖注入注入 null
- java - SpringBoot 休眠,CriteriaBuilder
- c# - 返回类型错误的 Blazor 任务
- tfs - 在 VS2019 中为 TFS2018 编辑 WIT 并且无法保存 (TF237090)
- r-markdown - Rmarkdown:更改代码的默认字体大小(Powerpoint 输出)
- selenium - 无法在linkedin上找到下一个按钮
- vue.js - 如何更改 v-slider 的大小?
- laravel - Laravel:将数据从一页发送到第二到第三页以在数据库中提交
- html - 如何使用具有属性的 Mat-Select [已选择]