首页 文章

在ggplot2中创建多线图时,如何使一条线比其他线更粗?

提问于
浏览
2

我有一个简单的融化数据框,有5个变量,我正在ggplot2的多线图中绘制 . 我在下面发布了我的代码,我觉得这个问题的答案应该很简单,但我找不到答案 .

如果我在同一个图表上一起绘制5条线,是否有办法使其中一条线(在这种情况下的平均值)比其他线更大/更大?

正如您在底部的代码中看到的那样,我指定行的大小为2,这使得所有5行的大小为2.但我希望有平均线(在刻度颜色中指定为黑色的线功能)变得比其他线更大 .

我试图将大小设置为 size = c(2,2,2,2,3) ,但ggplot2不喜欢这样 .

FiveLineGraph <- ggplot(data= df, aes(x= Date, y=Temperature, group= model, colour= model)) +
  geom_line(size= 2) +
  scale_colour_manual(values = c("red","blue", "green", "gold","black"))

有任何想法吗?

我提前感谢您的帮助 .

谢谢 .

1 回答

  • 4

    我添加了数据,使其成为“可重现的例子” . 这种技术也适用于你的线条的颜色 .

    library("ggplot2")
    set.seed(99)
    df <- data.frame(x=c(1:5, 1:5, 1:5), y=rnorm(15, 10, 2), 
                     group=c(rep("A", 5), rep("B", 5), rep("C", 5)),
                     stringsAsFactors=FALSE)
    ggplot(df, aes(x=x, y=y, group=group, colour=group)) + geom_line(size=2)
    

    enter image description here

    df$mysize <- rep(2, nrow(df))
    df$mysize[df$group=="B"] <- 4
    ggplot(df, aes(x=x, y=y, colour=group, size=mysize)) + geom_line() + 
      scale_size(range = c(2, 4), guide="none")
    

    enter image description here

相关问题