Ich habe eine 8-Jahres-Zeitreihendaten. Ich bin in der Lage, meine Daten zu plotten, aber ich möchte, dass die x-Achse nur den Monat anzeigt, für den ich Daten habe.Plot-Zeit-Serie ggplot Monat-Jahr, Xaxis zeigen nur Monat mit Wert?
Mein Problem hier ist, dass meine x-Achse zeigt Januar, aber ich habe nur Daten für Juni, Juli und August für jedes Jahr.
Ich würde auch vertikale Linie hinzufügen, jedes Jahr zu trennen ..
Hier ist, wie mein Skript wie bisher aussieht:
ggplot(data=CMRB, aes(x=D, y=Densite, group = habitat)) + geom_line() + scale_x_date(date_labels ="%b%Y")+ geom_point(aes(shape=habitat),size=4, fill="white")
Und meine Daten wie folgt aussehen:
Annee Grille Periode Densite SE Methode espece notes notes_2
82 2004 LG1 PP2 1.8888330 0.3990163 secr brun NA
83 2004 LG1 PP3 3.8880450 0.7570719 secr brun NA
84 2004 LG1 PP4 3.3281370 0.5573953 secr brun NA
85 2005 LG1 PP1 0.2367488 NA secr brun mnka NA
86 2005 LG1 PP2 0.4791649 0.2105729 secr brun NA
87 2005 LG1 PP3 0.1597214 0.1302571 secr brun NA
habitat Mois Date D
82 humid 07 07/1/2004 2004-07-01
83 humid 08 08/1/2004 2004-08-01
84 humid 08 08/1/2004 2004-08-01
85 humid 06 06/1/2005 2005-06-01
86 humid 07 07/1/2005 2005-07-01
87 humid 08 08/1/2005 2005-08-01
>
D ist eine Spalte, die ich erstellt habe, um das Datum (das ein Zeichen ist) in ein Datumsformat umzuwandeln.
Weiß jemand, wie man das macht? Wenn möglich, würde ich auch wie der Monat, ohne dass Daten weniger Platz in das Diagramm zu nehmen, um mehr Platz zu lassen, um die Daten von Juni bis August zu sehen ...
Prost
Nico
Ich bin nicht zu sagen, was Sie tun, ist falsch, aber dygraphs ist speziell für das Plotten von Zeitreihendaten konzipiert. Bist du unnachgiebig dafür, ggplot2 zu benutzen? – InfiniteFlashChess
Setzen Sie einfach das 'breaks' Argument von' scale_x_date'. – alistaire
Insbesondere etwas wie 'scale_x_date (date_labels ="% b% Y ", Brüche = eindeutig (CMRB $ D))' – alistaire