R ggplot如何在水平轴上扩展间隔
我有一个具有100个时间戳点的数据集。当我绘制图表时,横轴表示所有时间点,因此所有时间点都重叠在一起。如何在水平轴上指示一些常规时间点,而不是全部显示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
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()