R、 ggplot2,跳过打印x值

R、 ggplot2,跳过打印x值,r,plot,ggplot2,R,Plot,Ggplot2,这可能是相当简单,但我似乎无法找到如何做到这一点。 我得到了一个很好的图,里面有一组值行。 y表示金额,x表示日期 问题很简单,因为有太多的日期,它们被打印在彼此的上面 守则: sp = rbind(sp1,sp2,sp3,sp4) pm = ggplot(data = sp, aes(x = date, y = amount, colour=sm,

这可能是相当简单,但我似乎无法找到如何做到这一点。 我得到了一个很好的图,里面有一组值行。
y
表示金额,
x
表示日期

问题很简单,因为有太多的日期,它们被打印在彼此的上面

守则:

sp = rbind(sp1,sp2,sp3,sp4)
pm = ggplot(data = sp, aes(x = date, 
                                 y = amount, 
                                 colour=sm, 
                                 group=sm)) + 
        geom_line()
如何使x轴仅打印一次,例如每5个日期打印一次,而不是所有日期? 提前谢谢

library(scales)

sp = rbind(sp1,sp2,sp3,sp4)
pm = ggplot(data = sp, aes(x = date, y = amount, colour=sm, group=sm)) + 
    geom_line() +
    scale_x_date("x axis title", breaks = "5 years")

scale_x_date将为您整理x轴标签。要指定标签间隔,请使用如上所述的磅秤包装。(p.s您的日期必须是班级日期、POSIXct或POSIXlt)

您是否考虑过使用
主题
使其成对角线?在任何情况下,您都可能在
scale\u x\u continuous
scale\u x\u datetime
中寻找
breaks
参数。我同意@sebastian-c,如果您使用scale
datetime
,ggplot将为您找到很好的断点。,或者,即使是post也会给你一个主意。谢谢,我来检查一下。使用datetime刻度的建议中暗含的意思是将
sp$date
转换成日期对象。谢谢你的回复,它很有效。但我已经发现了:)无论如何,谢谢