2017-03-22 5 views
2

Ich möchte einen numerischen Vektor gegen Tag (% H:% M) in ggplot2 streuen.Plotten tagsüber (ohne Datum) in ggplot2

Ich verstehe, dass

as.POSIXct(dat$daytime, format = "%H:%M") 

die Art und Weise in Bezug auf meine Timedata der Formatierung zu gehen, aber der Ausgangsvektor gehören noch ein Datum (das heutige Datum). Folglich enthalten die Achsenticks das Datum (22. März).

ggplot(dat, aes(x=as.POSIXct(dat$daytime, format = "%H:%M"), y=y, color=sex)) + 
geom_point(shape=15, 
position=position_jitter(width=0.5,height=0.5)) 

image of the plot output

Gibt es eine Möglichkeit zum Datum alltogether loszuwerden, vor allem in der Handlung Achse? (Alle Informationen, die ich auf Message gefunden zu haben scheinen ältere Versionen von ggplot mit inzwischen aufgelösten date_format Argumente zu verweisen)

+0

Haben Sie versucht, mit 'scale_x_continuous (Etiketten = NULL)'? –

+1

'date_format()' ist jetzt in der 'scales' Paket – GGamba

+0

Ich denke,' scale_x_continuous' funktioniert nicht auf POSIXct Vektoren, da es eine Fehlermeldung erzeugt: 'Fehler in as.POSIXct.numeric (Wert): 'Herkunft' muss angegeben werden –

Antwort

2

Sie bieten zum labels Parameter von scale_x_datetime() oder verwenden Sie die date_label Parameter einer Funktion kann:

# create dummy data as OP hasn't provided a reproducible example 
dat <- data.frame(daytime = as.POSIXct(sprintf("%02i:%02i", 1:23, 2 * (1:23)), format = "%H:%M"), 
       y = 1:23) 
# plot 
library(ggplot2) 
ggplot(dat, aes(daytime, y)) + geom_point() + 
    scale_x_datetime(labels = function(x) format(x, format = "%H:%M")) 

EDIT: Oder, noch prägnanter können Sie den date_label Parameter verwenden (dank aosmith für die suggestion).

ggplot(dat, aes(daytime, y)) + geom_point() + 
    scale_x_datetime(date_label = "%H:%M") 

enter image description here

+1

Oder verwenden Sie das 'date_labels' Argument als Abkürzung,' date_labels = "% H:% M" '. – aosmith

+0

Vielen Dank! Nun frage ich mich, ob dieser Thread wird einer dieser sein _StackOverflow- "Top 1 Google-Suchergebnisse" _, die ich oft bei der Suche nach einem bestimmten Coding-Problem finden .. '# erstellen Dummy-Daten als OP hat nicht ein reproduzierbares Beispiel zur Verfügung gestellt " Okay, ich bekomme es, wird Code für Dummy-Daten beim nächsten Mal enthalten :) –