Ich habe eine Excel-Diagramm, das ich in R. erstellen möchtenggplot2 Zeitreihen Diagramm mit Hintergrundschattierung
Ich versuchte es mit einigen Dummy-Daten neu zu erstellen
a<-rnorm(12)
a_ts<-ts(a, start=c(2015, 1), frequency=12)
a_time<-time(a_ts)
a_series<-ts.union(ret=a_ts, date=a_time)
a_series_df<-as.data.frame(a_series)
ggplot() +
geom_rect(data=data.frame(xmin=decimal_date(as.Date(c("2015-01-01"))),
xmax=decimal_date(as.Date(c("2015-05-31"))), ymin=-Inf, ymax=Inf),
aes(xmin=xmin,xmax=xmax,ymin=ymin,ymax=ymax), fill="pink", alpha=0.5) +
geom_line(data = a_series_df, aes(x=date,y=ret, color='blue')) +
theme(axis.text.x=element_text(angle=90,hjust=1,vjust=0.5))
#this does not work
#scale_x_date(breaks = "1 month", minor_breaks = "1 month", labels=date_format("%B-%d")) +
#scale_y_continuous(labels = scales::percent)
die wie folgt aussieht
I Ich kämpfe mit den Datumsumwandlungen und setze auch die x- und y-Ursprünge auf Null und bekomme die Achsenbeschriftungen richtig, die letzten zwei Codezeilen arbeiten für Nicht-Datum-Datenpunkte. Ich möchte auch eine Legende unter dem Diagramm für Serie1, Serie2 und und Eintrag für den schattierten Bereich haben.
Jede Hilfe wäre willkommen.
Update nach den Vorschlägen der Anwendung:
Wie unterscheiden sich die zwei separaten Zeilen in den in Excel verwendeten Daten? Können Sie ein kleines Beispiel für die im Originalplot verwendeten Daten mit 'dput' angeben? Dummy-Daten sind in Ordnung, aber Sie müssen eine Spalte hinzufügen (z. B. einen Faktor), die die Daten in den einzelnen Zeilen unterscheidet. – steveb
Ich habe absichtlich nur eine Datenreihe gedruckt, die ich komplett ausschneiden möchte. Sie können davon ausgehen, dass ich ein Datenrahmen/xts-Objekt mit 1 bis n Datenspalten habe. Fürs Erste freue ich mich über eine ähnliche Formatierung wie die Excel-Grafik für die Dummy-Daten. – ThatQuantDude
Wenn Sie Ihren Code oben ausführen, werden Sie sehen, dass er einen Fehler generiert. Bitte stellen Sie sicher, dass der Beispielcode in Ihrer Frage vor dem Posten funktioniert. Prost. – shekeine