Reputation: 3
I tried plotting a barchart with variables "week_day "from my dataframe. The variable contains days of the week. This is the code I used:
ggplot(data=df_activity)+geom_bar(mapping = aes(x=week_day,color=Totalhrs),fill= "blue")+
labs(title ="Total Logins Across the Week")
This is result I got.
. What do I do for the variable in X-axis to be arranged in order and not alphabetically?
Upvotes: 0
Views: 66
Reputation: 173793
You need to convert week_days
to a factor and specify the order you want it to take:
ggplot(df_activity) +
geom_bar(aes(x = factor(week_day, levels = c("Monday", "Tuesday", "Wednesday",
"Thursday", "Friday", "Saturday", "Sunday"))),
fill = "blue") +
labs(x = "Week day", title ="Total Logins Across the Week")
Dummy data made up to match plot in question
df_activity <- data.frame(
week_day = rep(c("Monday", "Tuesday", "Wednesday", "Thursday",
"Friday", "Saturday", "Sunday"),
times = c(120, 150, 148, 145, 125, 123, 118))
)
Upvotes: 2