【问题标题】:How to make a one dimensional scatterplot of points in time?如何制作时间点的一维散点图?
【发布时间】:2016-03-15 12:31:17
【问题描述】:

我想创建一个时间点的一维散点图(大约 5 小时的范围),以可视化例如我早上起床的时间。

我试过了

time=rep(Sys.time(),100)+round(3600*rnorm(100),1)
stripchart(as.numeric(time), main="stripchart", method="jitter", jitter = 2)

但这给了我

我相信时间是从纪元开始以秒为单位给出的。我对一天中的时间(8:02、7:50、...)感兴趣,所以以秒为单位的时间对我来说不起作用。我需要as.numeric,但是因为我得到“无效的第一个参数”以将其排除在外。

【问题讨论】:

    标签: r time plot


    【解决方案1】:

    使用xaxt="n" 绘制没有x 轴标签的图表,然后使用axis 添加小时和分钟。我正在使用pretty 来获取小时的开始。

    time=rep(Sys.time(),100)+round(3600*rnorm(100),1)
    stripchart(as.numeric(time), main="stripchart", method="jitter", jitter = 2, xaxt="n")
    axis(side=1,pretty(time), format(pretty(time),"%H:%M"))
    

    【讨论】:

    • 我喜欢。没有意识到你可以抑制这样的轴。
    • 非常感谢!我有一半的时间得到Error in axis(side = 1, pretty(as.numeric(time)), format(pretty(time), : 'at' and 'labels' lengths differ, 5 != 4...
    • 删除axis行中的as.numericaxis(side=1,pretty(time), format(pretty(time),"%H:%M"))我更新了我的答案。
    【解决方案2】:

    你可以这样做:

    time=rep(Sys.time(),100)+round(3600*rnorm(100),1)
    minutes <- (time - min(time))/60
    stripchart(as.numeric(minutes), main="stripchart", method="jitter", jitter = 2)
    

    产生这个(x 轴以分钟为单位):

    【讨论】:

    • 对不起,我不清楚。我对 8:02 等时钟上的时间非常感兴趣,我将编辑问题以更好地反映这一点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-04-07
    • 2020-10-04
    • 2020-04-20
    • 2017-09-13
    • 1970-01-01
    • 2020-09-21
    • 2020-10-28
    相关资源
    最近更新 更多