2017-09-22 28 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)、]; geom_point(aes(color = clarity))+ scale_colour_hue( "clarity"、breaks =レベル(dsamp $ clarity)、labels = paste( "lab_"、levels (dsamp $ clarity))) ' –

答えて

1

私のミスのためにすべての人に心からの謝罪。私はdatetime値から平日、時間を抽出しましたが、charからこれらのフィールドの因子にデータ型を変更するのを忘れました。だから、ggplotの問題。私はデータ型を変更し、ggplotをチェックしました。今、伝説が見せています。

1

OPが解決策を見つけましたが、私は各グループが1つの観測のみで構成されている場合に代替アプローチを提案しています。

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

関連する問題