gpt4 book ai didi

R + ggplot2 : how to hide missing dates from x-axis?

转载 作者:行者123 更新时间:2023-12-04 04:54:11 25 4
gpt4 key购买 nike

假设我们有以下简单的日期值对数据框,其中序列中缺少一些日期(即 1 月 12 日至 1 月 14 日)。当我绘制这些点时,它会在 x 轴上显示这些缺失的日期,但没有与这些日期对应的点。我想防止这些缺失的日期出现在 x 轴上,以便点序列没有中断。关于如何做到这一点的任何建议?谢谢!

dts <- c(as.Date( c('2011-01-10', '2011-01-11', '2011-01-15', '2011-01-16')))
df <- data.frame(dt = dts, val = seq_along(dts))
ggplot(df, aes(dt,val)) + geom_point() +
scale_x_date(format = '%d%b', major='days')

enter image description here

最佳答案

然后将日期数据转换为因子。目前,ggplot 正在从您告诉它数据所在的意义上解释数据 - 一个连续的日期尺度。你不想要那个尺度,你想要一个分类尺度:

require(ggplot2)
dts <- as.Date( c('2011-01-10', '2011-01-11', '2011-01-15', '2011-01-16'))
df <- data.frame(dt = dts, val = seq_along(dts))
ggplot(df, aes(dt,val)) + geom_point() +
scale_x_date(format = '%d%b', major='days')

相对
df <- data.frame(dt = factor(format(dts, format = '%d%b')), 
val = seq_along(dts))
ggplot(df, aes(dt,val)) + geom_point()

它产生:
enter image description here

那是你想要的吗?

关于R + ggplot2 : how to hide missing dates from x-axis?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5169366/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com