我正在尝试使用d-m-y h
作为我的x轴文本来构建绘图。我已经尝试过并使用bdscale
进行了修正(请参见先前的帖子here)
理想情况下,我想使用ggplot2
实现这一目标,但是我愿意接受其他可能性来完成此任务。
这是我的示例代码:
library(lubridate)
library(tidyverse)
library(bdscale)
s1_date <- dmy_hms("30/09/2019 00:00:00")
s2_date <- dmy_hms("08/10/2019 00:00:00")
df <- data.frame(date = seq(from=as.POSIXct("2012-1-1 0:00", tz="UTC"),
to=as.POSIXct("2012-1-3 23:00", tz="UTC"),
by="hour"),
value = sample(1:75, 72))
df %>%
ggplot(aes(x = date, y = value)) +
geom_col() +
labs(x = "", y = "") +
theme(axis.title.x = element_blank(),
axis.text.x = element_text(angle = 90, hjust = 1))
我只想让x-axis
文本读取01-01-2012 00
等
有什么想法吗?
有一个特定的轴功能可以执行此操作。我已经修改了您的代码以包含它。
df %>%
ggplot(aes(x = date, y = value)) +
geom_col() +
labs(x = "", y = "") +
scale_x_datetime(date_breaks = "6 hours",
date_labels = "%m/%d/%y %H") +
theme(axis.title.x = element_blank(),
axis.text.x = element_text(angle = 90, hjust = 1))