2017-09-22 55 views
1

我想要顯示平均租用的工作日按小時使用ggplot的平均數量,如下面的R所示。由於我的工作日是我的數據中的數字,它將文本圖例作爲數字給出。ggplot中缺少的傳說

ggplot(bike_share_train, aes(x=hour, y=count, color=day))+ 
    geom_point(data = day_summary_by_hour, aes(group = day))+ 
    geom_line(data = day_summary_by_hour, aes(group = day))+ 
    ggtitle("Bikes Rent By Weekday")+scale_colour_hue('Weekday') 

enter image description here

我想改變這些數字平日的名字和我嘗試使用下面的命令,但傳說中ggplot失蹤。請讓我知道如何解決這個問題。

ggplot(bike_share_train, aes(x=hour, y=count, color=day))+geom_point(data = day_summary_by_hour, aes(group = day)) + 
    geom_line(data = day_summary_by_hour, aes(group = day))+ 
    ggtitle("Bikes Rent By Weekday")+ 
    scale_colour_hue('Weekday', breaks = levels(bike_share_train$day), labels=c('Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday')) 

enter image description here

+0

爲我工作。 '庫(GGPLOT2); dsamp < - diamonds [sample(nrow(diamonds),1000),]; ggplot(dsamp,aes(carat,price))+ geom_point(aes(color = clarity))+ scale_colour_hue(「clarity」,breaks = levels(dsamp $ clarity),labels = paste(「lab_」,levels (dsamp $清晰度)))' –

回答

1

誠摯的歉意對大家爲我的錯誤。我從日期時間值中提取了工作日,小時,但忘記將char的數據類型更改爲這些字段的因子。所以,在ggplot中問題。我改變了數據類型並檢查了ggplot。現在傳說正在顯示。

1

儘管OP找到了解決方案,但我建議在每個組只包含一個觀察值時採用另一種方法。

library(ggplot2) 
# create some sample data 
bike_share_data<-data.frame(hour = c(1.5,2.3,1.3,2.2,1.5), 
         count = c(21,26,30,15,20), 
         day = c("1","2","3","4","5")) 
head(bike_share_data) 
ggplot(bike_share_data, aes(x=hour, y=count, color=day))+ 
    geom_point(data = bike_share_data, aes(group = 1))+ 
    geom_line(data = bike_share_data, aes(group = 1))+ 
    ggtitle("Bikes Rent By Weekday")+ 
    scale_colour_hue('Weekday', 
        breaks = levels(bike_share_data$day), 
        labels=c('Monday','Tuesday','Wednesday','Thursday','Friday') 
) 

Bike Rent by weekday