ggplot删除特定的x轴标签 库(tidyverse) df
我建议研究R中的Lubridate包-您可以将任何混乱的日期值转换为适当的POSIXT格式,还可以非常轻松地提取月份信息-您还可以将这些日期转换为实际月份的一列,并将其用作轴标签,这是清洁,因为你会有一个额外的列只是相应的月份-你也可以填写该月的基础上,做一些其他很酷的事情 您可以通过使用seq.date设置中断来实现所需:ggplot删除特定的x轴标签 库(tidyverse) df,r,ggplot2,R,Ggplot2,我建议研究R中的Lubridate包-您可以将任何混乱的日期值转换为适当的POSIXT格式,还可以非常轻松地提取月份信息-您还可以将这些日期转换为实际月份的一列,并将其用作轴标签,这是清洁,因为你会有一个额外的列只是相应的月份-你也可以填写该月的基础上,做一些其他很酷的事情 您可以通过使用seq.date设置中断来实现所需: library(tidyverse) df <- data.frame(date = as.Date(c("2017-12-01", "2018-01-01", "
library(tidyverse)
df <- data.frame(date = as.Date(c("2017-12-01", "2018-01-01", "2018-02-01",
"2018-03-01", "2018-04-01", "2018-05-01",
"2018-06-01", "2018-07-01", "2018-08-01",
"2018-09-01", "2018-10-01", "2018-11-01")),
value = c(0.567859562, 0.514907158, 0.035399304, 0.485728823,
0.925127361, 0.237531067, 0.301930968, 0.133373326,
0.082275426, 0.464255614, 0.2366749, 0.652084264))
ggplot(df, aes(date, value)) +
geom_col() +
scale_x_date(date_breaks = "1 month",
date_labels = "%b") +
theme(axis.text.x = element_text(angle = 90, vjust = 0.3))
library(tidyverse);图书馆(lubridate)
我想这就是你想要的。日期中断
是不必要的
library(tidyverse);library(lubridate)
df <- data.frame(date = as.Date(c("2017-12-01", "2018-01-01", "2018-02-01",
"2018-03-01", "2018-04-01", "2018-05-01",
"2018-06-01", "2018-07-01", "2018-08-01",
"2018-09-01", "2018-10-01", "2018-11-01")),
value = c(0.567859562, 0.514907158, 0.035399304, 0.485728823,
0.925127361, 0.237531067, 0.301930968, 0.133373326,
0.082275426, 0.464255614, 0.2366749, 0.652084264))
ggplot(df, aes(date, value)) +
geom_col() +
scale_x_date(
date_labels = "%b",
breaks = seq.Date(ymd("2017-12-01"),ymd("2018-11-01"), by = "month")) +
theme(axis.text.x = element_text(angle = 90, vjust = 0.3))
在这种情况下是否需要顺序?我可以看出,这是一个选择标签的有用且更灵活的工具,很高兴知道,但我的理解是,提问者只是想显示其df中的日期,而不是由日期分隔符添加的图书结束日期,因此他们可以简单地引用这些日期。
ggplot(df, aes(date, value)) +
geom_col() +
scale_x_date(date_labels = "%b", breaks = df$date) +
theme(axis.text.x = element_text(angle = 90, vjust = 0.3))