【问题标题】:R, Format date on X axis using ggplotR,使用ggplot在X轴上格式化日期
【发布时间】:2020-02-18 19:46:10
【问题描述】:

在使用 as.Date 聚合、“过滤”和解析包含日期和小时的列后,还使用 ​​melt 函数对其进行转换,我的数据如下所示:

DATE    variable value
1 13-09-20  Billete_50 20405
2 14-09-20  Billete_50 19808
3 13-09-20 Billete_100 27787
4 14-09-20 Billete_100 20361
5 13-09-20       Total 48192
6 14-09-20       Total 40169

我想要一个线性图来显示数据,但它看起来像这样:

是西班牙语,对不起,但是日期几乎一样,可能只有九月(Sep),但显示的是十月,一月,四月,七月,然后回到十月。

这是我的 ggplot 线:

ggplot(plotCajero1Melted, aes(x=DATE, y=value, col=variable)) + geom_line() +xlab("Fecha") +ylab("Saldo") +ggtitle("Cajero 1")

我该怎么办?跟日期有关吗?我在想当年,它以一种简短的方式表示,可能是它使 ggplot 有一个奇怪的行为,或者可能是我缺少的一个 ggplot 选项?

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    您是对的,您的日期格式没有按应有的方式读取(它似乎被读取为年-月-日)。

    您可以修改日期格式,例如使用 lubridate 包中的函数 dmy 指示 r 将日期读取为日-月-年:

    library(lubridate)
    df$DATE <- dmy(df$DATE)
    
    ggplot(df, aes(x = DATE, y = value, color = variable))+
      geom_line()
    

    这是你要找的吗?

    【讨论】:

    • 当然,非常感谢,你拯救了我的一天。我申请了一个javascript+python+sql的工作,那里说“R可取但不是必需的”,他们发给我的测试只有R,很有趣哈哈。我在 23 小时前开始了解它。
    • 哈哈!那么祝你好运;)手指交叉
    • dc37 谢谢:D
    猜你喜欢
    • 1970-01-01
    • 2014-06-06
    • 1970-01-01
    • 2014-08-12
    • 2012-07-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多