使用连续比例

时间:2016-03-14 17:26:47

标签: r ggplot2

我正在尝试使用连续刻度将离散标签添加到ggplot2绘图中。虽然有很多问题使用stat_function(即大约plotting multiple functions)以及许多关于如何使用不同比例的问题,但我无法理解如何在此特定情况下更改比例。

这是情节:

myfun1 <- function(x) (13.076-96.543)*x + (-44.056 +102.057)*x^2 + (17.856 -42.996)*x^3 + (-2.996  + 7.444)*x^4 + (0.190 -0.450)*x^5 + 100.088 + 75.215 # average vs. lowest
myfun2 <- function(x) 13.076*x -44.056*x^2 + 17.856*x^3 -2.996*x^4 + 0.190*x^5 + 100.088 # lowest
myfun3 <- function(x) (13.076-183.093)*x + (-44.056 +229.447)*x^2 + (17.856 -99.353)*x^3 + (-2.996  + 17.517)*x^4 + (0.190 -1.080)*x^5 + 100.088 + 67.115 # highest vs. lowest

df <- data.frame(x = c(0, 6), y = c(0, 6))

myplot_weekday <- ggplot(data = df, aes(x = x, y = y)) + 
  stat_function(fun = myfun3, aes(color = "Highest")) +
  stat_function(fun = myfun2, aes(color = "Lowest")) +
  stat_function(fun = myfun1, aes(color = "Average")) +
  theme_minimal() +
  scale_colour_manual("Students' Course Grade", values = c("red", "black", "blue")) +
  theme(legend.position = "top") +
  theme(text=element_text(size= 14, family= "Times")) +
  ylab("Minutes of Videos Watched") +
  xlab("Weekday")

weekday plot

而不是x轴(0,2,4和6)上的连续标签,我试图添加“星期日”,“星期一”,“星期二”,“星期三”,“星期四”, “星期五”和“星期六”,但我觉得我接近这个错误的方式。

1 个答案:

答案 0 :(得分:7)

您可以设置您想要的任何休息(将获得标签)和相应的标签:

+ scale_x_continuous(breaks = 0:6,
    labels = paste0(c("Sun", "Mon", "Tues", "Wednes", "Thurs", "Fri", "Satur"), "day"))