R ggplot如何在水平轴上扩展间隔

R ggplot如何在水平轴上扩展间隔,r,ggplot2,R,Ggplot2,我有一个具有100个时间戳点的数据集。当我绘制图表时,横轴表示所有时间点,因此所有时间点都重叠在一起。如何在水平轴上指示一些常规时间点,而不是全部显示 EU T_DCEP DCEP 1 05/02/2016 1:28 1.14596 2 05/02/2016 1:39 1.14684 3 05/02/2016 2:04 1.14488 4 05/02/2016 3:15 1.14820 5 05/02/2016 3:34 1.14750 6 05/02/20

我有一个具有100个时间戳点的数据集。当我绘制图表时,横轴表示所有时间点,因此所有时间点都重叠在一起。如何在水平轴上指示一些常规时间点,而不是全部显示

EU
T_DCEP DCEP
1    05/02/2016 1:28 1.14596
2    05/02/2016 1:39 1.14684
3    05/02/2016 2:04 1.14488
4    05/02/2016 3:15 1.14820
5    05/02/2016 3:34 1.14750
6    05/02/2016 4:40 1.14915
7    05/02/2016 4:56 1.14849
8    05/02/2016 5:22 1.14913
9    05/02/2016 5:55 1.14761
10   05/02/2016 6:07 1.14821

. ... ..绘制时,变量的
很重要。转换为有效的日期时间类以解决此问题:

#Example data
set.seed(451)
dates <- seq(Sys.time()-99, Sys.time(), length.out=100)
df <- data.frame(x=dates, y=rnorm(100))
head(df)
#                     x          y
# 1 2016-11-04 09:49:09 -0.9431540
# 2 2016-11-04 09:49:10  0.7257408
# 3 2016-11-04 09:49:11  2.5257787
# 4 2016-11-04 09:49:12  1.1916054
# 5 2016-11-04 09:49:13  3.1091791
# 6 2016-11-04 09:49:14  0.2848636

class(df$x)
[1] "POSIXct" "POSIXt"

但是如果我没有一个合适的日期时间类,它看起来就像你的例子

df$x <- as.character(dates)
ggplot(df, aes(x, y, group=1)) + geom_point() + geom_line()

df$x您可能需要显示一些示例数据,以便其他人可以提供帮助。例如,您可以显示类似于dput(head(EU))的输出的内容。
。您可能有一个
因子
问题。检查
等级(EU$T\U DCEP)
。如果它是一个因子或字符类,它将按您的说明打印。转换成日期类,它会打印得更整齐。你说得对,我需要转换EU$T_DCEP的类,谢谢!
df$x <- as.character(dates)
ggplot(df, aes(x, y, group=1)) + geom_point() + geom_line()