【问题标题】:Use of as.POSIXct and understanding timezone in time series- R使用 as.POSIXct 并理解时间序列中的时区 - R
【发布时间】:2021-05-24 01:11:28
【问题描述】:

我希望在 R 中一个相当简单的时间序列图上设置 x 轴限制。 我的情节产生的限制是我的时区提前 6 小时(在下面的示例中,情节将在 14:00:00 开始和结束)。 我目前在“美国/丹佛”。

我的数据之前被绘制,因此所有内容都被移动了 6 小时向后,但我能够在 x 轴上正确对齐,但现在 x 轴的界限/限制仍然存在一个问题。

date_format <- function(format = "%b %d - %H:%M") {function(x) format(x, format)}

lims <- as.POSIXct(strptime(c("2021-05-04 08:00:00","2021-05-08 08:00:00"), format = "%Y-%m-%d %H:%M"))

combo_ch1short <- ggplot(data = data_combo_ch1short, aes(x = DateTime, y = Z.kOhm, color = probe.pair.name)) + 
 scale_x_datetime(labels = date_format(), limits = lims, date_breaks = "12 hours") + ...

对不起,这很新。非常感谢任何帮助!

编辑:

data_combo_ch1short:

Time        probe.pair.name      DateTime              Z.kOhm 
1617890878     ch_1_ch_2         2021-04-12 17:52:32   5228.69
1617890878     ch_1_ch_3         2021-04-12 17:52:32   5031.88
1618251752     ch_1_ch_2         2021-04-12 18:22:32   4089.37
1618251752     ch_1_ch_3         2021-04-12 18:22:32   4231.90    
...         

【问题讨论】:

    标签: r timezone lubridate strptime


    【解决方案1】:

    您可以通过在tz 参数中指定时区来在任何时区创建lims

    lims <- as.POSIXct(c("2021-05-04 08:00:00","2021-05-08 08:00:00"), tz = 'US/Mountain')
    

    【讨论】:

    • 谢谢你,罗纳克!我之前尝试过设置限制: lims
    • tz = "America/Denver" 不是有效值。您可以运行 OlsonNames() 以获取 tz 参数的所有有效值。使用tz = 'US/Mountain' 不起作用?
    • 您好,谢谢。是的,我也尝试过“US/Mountain”,但没有成功。
    猜你喜欢
    • 1970-01-01
    • 2012-11-22
    • 2014-06-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多