2016-03-21 16 views
0

Ich möchte Werte gegen Daten grafisch darstellen und die Gitter eines Diagramms so anpassen, dass auf der x-Achse das Hauptraster jeden Sonntag fällt und das kleine Gitter für jeden Tag beibehalten wird. Auf der Y-Achse hätte ich gerne das Hauptgitter in jeder Einheit und kein Nebengitter.R ggplot benutzerdefiniertes Gitter

Das folgende Beispiel mit dem Standardraster platziert das Hauptraster alle 2 Einheiten auf jeder Achse und das Nebenraster jede Einheit (was in Ordnung ist, wenn nur das Hauptraster geändert werden kann). Wie kann ich das lösen?

require(ggplot2) 
data <- data.frame(date = seq(as.Date("2016-05-02"),as.Date("2016-05-16"),2), 
       age_in_days = seq(1,15,2))) 

ggplot(data=data,aes(x=date,y=age_in_days)) + geom_line() 

Antwort

1

scale_x_date muss in x verwendet werden.

Um wie folgt zu arbeiten Bibliothek "Waage" sollte geladen werden. Das Standard-Datumsformat wird dann aus irgendeinem Grund geändert, behalten Sie es wie vor der letzten Zeile.

library(scales) 
ggplot(data=data,aes(x=date,y=age_in_days)) + geom_line() + 
    scale_x_date(breaks = seq(Sys.Date(), as.Date("2016-08-01"), by="1 week"), 
labels = date_format("%b %d"))