R 如何控制geom_线的线厚

R 如何控制geom_线的线厚,r,R,我想在绘图时控制线条的厚度,但遇到了一些困难。似乎如果我在geom_line()中添加size=0.06或size=2,它实际上并没有将线条厚度更改为不同的大小。它还在输出中添加了奇怪的图例。我该如何解决这个问题 我用来进行绘图的代码是: ggplot(data =df)+ geom_line(aes(x = ADY, y = AVAL, color = PARAMCD, yaxs="d", xaxs="d", size=0.06))+

我想在绘图时控制线条的厚度,但遇到了一些困难。似乎如果我在
geom_line()
中添加
size=0.06
size=2
,它实际上并没有将线条厚度更改为不同的大小。它还在输出中添加了奇怪的图例。我该如何解决这个问题

我用来进行绘图的代码是:

ggplot(data =df)+
       geom_line(aes(x = ADY, y = AVAL, color = PARAMCD, yaxs="d", xaxs="d", size=0.06))+
       geom_point(aes(x = ADY, y = AVAL))+
       scale_color_discrete(breaks=c("SYSBP", "DIABP", "PULSE"),name = "Vital signs", labels = c("Systolic BP", "Diastolic BP",  "Pulse"))+
       scale_colour_manual(values=c(DIABP="#512d69",SYSBP="#007254",PULSE="#fd9300"))
size=0.06
size=2
的输出为:

有人能给我一些指导吗?我不想在图例上显示尺寸,我想控制线条的厚度。谢谢

可以使用以下代码生成示例数据:

df<- structure(list(ADY = c(-6, -6, -6, 1, 1, 1, 8, 8, 8, 15, 15, 
15, 22, 22, 22, 29, 29, 29, 43, 43, 43, 57, 57, 57, 64, 87, 87, 
87, 101, 101, 101), AVAL = c(66, 67, 127, 70, 58, 136, 68, 74, 
140, 145, 74, 58, 75, 72, 149, 82, 66, 143, 86, 60, 159, 64, 
87, 136, NA, 73, 58, 135, 141, 74, 74), PARAMCD = structure(c(3L, 
1L, 2L, 1L, 3L, 2L, 3L, 1L, 2L, 2L, 1L, 3L, 1L, 3L, 2L, 1L, 3L, 
2L, 1L, 3L, 2L, 3L, 1L, 2L, NA, 1L, 3L, 2L, 2L, 1L, 3L), .Label = c("DIABP", 
"SYSBP", "PULSE"), class = "factor")), row.names = c(NA, -31L
), class = "data.frame")

df
size
应该在您的案例中的
aes
之外:

您可以看到
size=0.06
size=2
之间的差异

library(ggplot2)

ggplot(data =df)+
  geom_line(aes(x = ADY, y = AVAL, color = PARAMCD, yaxs="d", xaxs="d"), size=0.06) +
  geom_point(aes(x = ADY, y = AVAL))+
  scale_colour_manual(values=c(DIABP="#512d69",SYSBP="#007254",PULSE="#fd9300"))

ggplot(data =df)+
  geom_line(aes(x = ADY, y = AVAL, color = PARAMCD, yaxs="d", xaxs="d"),  size=2) +
  geom_point(aes(x = ADY, y = AVAL))+
  scale_colour_manual(values=c(DIABP="#512d69",SYSBP="#007254",PULSE="#fd9300"))