R语言
axis.POSIXct
位于 graphics
包(package)。 说明
用于绘制表示日历日期和时间的 "POSIXlt"
、 "POSIXct"
和 "Date"
类对象的函数。
用法
axis.POSIXct(side, x, at, format, labels = TRUE, ...)
axis.Date(side, x, at, format, labels = TRUE, ...)
参数
x , at |
日期时间或日期对象,或可以适当转换的其他类型的对象。 |
side |
请参阅 |
format |
请参阅 |
labels |
指定是否要在刻度线处进行注释的逻辑值,或者要放置在刻度点处的字符串向量。 |
... |
从其他方法传递或向其他方法传递的更多参数,通常是 graphical parameters 。 |
细节
axis.POSIXct
和 axis.Date
工作相当努力(从 R-4.3.0 通过使用 pretty
for DateTimeClasses )来选择合适的时间单位(年、月、日、小时、分钟或秒)和合理的输出格式,但这可以通过提供 format
规范来覆盖。
如果提供at
,则指定刻度和标签的位置,而如果指定x
,则选择合适的标签网格。可以使用 labels = FALSE
抑制刻度标签的打印。
"POSIXct"
输入的 date-times 在 "tzone"
属性给出的时区(如果有)中解释,否则在当前时区中解释。
date-times 的呈现方式(尤其是月份名称)由类别 "LC_TIME"
的区域设置控制(请参阅 Sys.setlocale
)。
值
轴刻度上绘制刻度线的位置。
例子
with(beaver1, {
opar <- par(mfrow = c(2,1))
time <- strptime(paste(1990, day, time %/% 100, time %% 100),
"%Y %j %H %M")
plot(time, temp, type = "l") # axis at 5-hour intervals.
# now label every hour on the time axis
plot(time, temp, type = "l", xaxt = "n")
r <- as.POSIXct(round(range(time), "hours"))
axis.POSIXct(1, at = seq(r[1], r[2], by = "hour"), format = "%H")
par(opar) # reset changed par settings
})
plot(.leap.seconds, seq_along(.leap.seconds), type = "n", yaxt = "n",
xlab = "leap seconds", ylab = "", bty = "n")
rug(.leap.seconds)
## or as dates
lps <- as.Date(.leap.seconds)
plot(lps, seq_along(.leap.seconds),
type = "n", yaxt = "n", xlab = "leap seconds",
ylab = "", bty = "n")
rug(lps)
## 100 random dates in a 10-week period
random.dates <- as.Date("2001/1/1") + 70*sort(stats::runif(100))
plot(random.dates, 1:100)
# or for a better axis labelling
plot(random.dates, 1:100, xaxt = "n")
axis.Date(1, at = seq(as.Date("2001/1/1"), max(random.dates)+6, "weeks"))
axis.Date(1, at = seq(as.Date("2001/1/1"), max(random.dates)+6, "days"),
labels = FALSE, tcl = -0.2)
## axis.Date() with various data types:
x <- seq(as.Date("2022-01-20"), as.Date("2023-03-21"), by = "days")
plot(data.frame(x, y = 1), xaxt = "n")
legend("topleft", title = "input",
legend = c("character", "Date", "POSIXct", "POSIXlt", "numeric"),
fill = c("violet", "red", "orange", "coral1", "darkgreen"))
axis.Date(1)
axis.Date(3, at = "2022-04-01", col.axis = "violet")
axis.Date(3, at = as.Date("2022-07-01"), col.axis = "red")
axis.Date(3, at = as.POSIXct(as.Date("2022-10-01")), col.axis = "orange")
axis.Date(3, at = as.POSIXlt(as.Date("2023-01-01")), col.axis = "coral1")
axis.Date(3, at = as.integer(as.Date("2023-04-01")), col.axis = "darkgreen")
## automatically extends the format:
axis.Date(1, at = "2022-02-15", col.axis = "violet",
col = "violet", tck = -0.05, mgp = c(3,2,0))
## axis.POSIXct() with various data types (2 minutes):
x <- as.POSIXct("2022-10-01") + c(0, 60, 120)
attributes(x) # no timezone
plot(data.frame(x, y = 1), xaxt = "n")
legend("topleft", title = "input",
legend = c("character", "Date", "POSIXct", "POSIXlt", "numeric"),
fill = c("violet", "red", "orange", "coral1", "darkgreen"))
axis.POSIXct(1)
axis.POSIXct(3, at = "2022-10-01 00:01", col.axis = "violet")
axis.POSIXct(3, at = as.Date("2022-10-01"), col.axis = "red")
axis.POSIXct(3, at = as.POSIXct("2022-10-01 00:01:30"), col.axis = "orange")
axis.POSIXct(3, at = as.POSIXlt("2022-10-01 00:02"), col.axis = "coral1")
axis.POSIXct(3, at = as.numeric(as.POSIXct("2022-10-01 00:00:30")),
col.axis = "darkgreen")
## automatically extends format (here: subseconds):
axis.POSIXct(3, at = as.numeric(as.POSIXct("2022-10-01 00:00:30")) + 0.25,
col.axis = "forestgreen", col = "darkgreen", mgp = c(3,2,0))
## axis.POSIXct: 2 time zones
HST <- as.POSIXct("2022-10-01", tz = "HST") + c(0, 60, 60*60)
CET <- HST
attr(CET, "tzone") <- "CET"
plot(data.frame(HST, y = 1), xaxt = "n", xlab = "Hawaii Standard Time (HST)")
axis.POSIXct(1, HST)
axis.POSIXct(1, HST, at = "2022-10-01 00:10", col.axis = "violet")
axis.POSIXct(3, CET)
mtext(3, text = "Central European Time (CET)", line = 3)
axis.POSIXct(3, CET, at="2022-10-01 12:10", col.axis = "violet")
也可以看看
DateTimeClasses、Dates 了解课程详情。
Axis
。
相关用法
- R axis 将轴添加到绘图中
- R axTicks 计算轴刻度线位置
- R arrows 将箭头添加到绘图中
- R abline 将直线添加到绘图中
- R assocplot 关联图
- R legend 将图例添加到绘图中
- R barplot 条形图
- R plot.histogram 绘制直方图
- R points 向绘图添加点
- R stem 茎叶图
- R mtext 将文本写入绘图的边距
- R contour 显示轮廓
- R pairs 散点图矩阵
- R stars 星图(蜘蛛图/雷达图)和线段图
- R box 在地块周围画一个方框
- R coplot 调节图
- R smoothScatter 具有平滑密度颜色表示的散点图
- R mosaicplot 马赛克图
- R bxp 从摘要中绘制箱线图
- R plot.raster 绘制光栅图像
- R curve 绘制函数图
- R plot.factor 绘制因子变量
- R sunflowerplot 制作向日葵散点图
- R plot.table 表对象的绘图方法
- R units 图形单位
注:本文由纯净天空筛选整理自R-devel大神的英文原创作品 Date and Date-time Plotting Functions。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。