R语言 使用ggplot参考线时,图例线宽不变[已关闭]

ovfsdjhp  于 2023-03-10  发布在  其他
关注(0)|答案(1)|浏览(144)

**已关闭。**此问题为not reproducible or was caused by typos。当前不接受答案。

这个问题是由打字错误或无法再重现的问题引起的。虽然类似的问题在这里可能是on-topic,但这个问题的解决方式不太可能帮助未来的读者。
2天前关闭。
Improve this question
我试图使图例中的线条更粗,以便更容易看到。然而,当我更改参考线功能中的大小时,它只会使线条更长。

test=data.frame(x=1:10,y=1:10,ind="B")
test2=data.frame(x=1:10,y=4,ind="A")
test_plot = rbind(test,test2)
plot<-ggplot(test_plot,aes(x=x, y=y, group=ind, color=ind))+
    geom_line(size=line_size)+
    labs(y = "y", x= expression(paste(gamma," index")),color="Model")+ theme_bw() +theme(strip.text = element_text(size=label_size),legend.text=element_text(size=label_size),text = element_text(size=label_size),
                                                                                                                    axis.text = element_text(size=label_size),legend.position =  "bottom",panel.grid.major = element_blank(), panel.grid.minor = element_blank()) +scale_color_manual(labels = c("A","B"),
                                                                                                                                                                                                                                                                                      values = c(cols[1],cols[2]))+guides(colour = guide_legend(override.aes = list(size=30,linetype=1)))

这就产生了

ymdaylpp

ymdaylpp1#

我投票关闭为“不可复制或由错字造成”,但这里的“评论回答”这是太长的评论。
1.数据框中没有line_size。
1.我假设这是一个数据变量,它反映了你的线宽。你可能想把它传递给aes,即aes(size = line_size)。目前最好使用linewidth而不是size

library(ggplot2)

test <- data.frame(x = 1:10, y = 1:10, ind = "B")
test2 <- data.frame(x = 1:10, y = 4, ind = "A")
test_plot <- rbind(test, test2)

ggplot(test_plot, aes(x = x, y = y, group = ind, color = ind)) +
  geom_line(aes(linewidth = ind)) +
  scale_linewidth_manual(values = c(1, 2))

创建于2023年3月7日,使用reprex v2.0.2

相关问题