我想要兩種線型(一種實線和一種虛線)并將其也顯示在圖例上(這也沒有顯示),我嘗試了下面的代碼,但行沒有改變,我也嘗試添加scale_linetype_manual(values=c("solid", "dashed"))在scale_colour manual, 之前并沒有做任何效果。
data<- data.frame(
Date=(1:13),
A=c(1.12,2.78,2.08,1.55,0.67,0.98,1.43,0.42,0.30,0.82,0.51,0.23,0.44),
B= c(0.10,0.07,0.04,0.05,0.10,0.08,0.12,0.05,0.02,0.11,0.06,0.05,0.11),
C= c(9.97,6.94,10.87,9.69,12.27,11.27,10.42,10.97,9.15,10.59,11.64,8.86,8.47))
LINES <- c("A" = "solid", "B" = "dashed")
ggplot(data)
geom_line(aes(Date, A, color = "A"))
geom_point(aes(Date, A))
geom_line(aes(Date, B*10, color="B"))
geom_point(aes(Date, B*10))
scale_y_continuous(sec.axis = sec_axis(~./100, name= expression(paste("B", "(", mu, "M)"))))
scale_color_manual(name = "", values = c("A" = "black", "B" = "black"), labels=c(A ~ (mu~M)), (B ~ (mu~M)))
scale_linetype_manual(values=LINES)
theme_classic()
ylab(bquote(A ~ (mu~M)))
xlab("")

uj5u.com熱心網友回復:
在使用時您會一次又一次聽到的一般建議gggplot2是獲取長格式資料。當資料為長格式時,它使得繪制資料變得非常容易。
我們洗掉C此處不需要的列并pivot_longer用于獲取長格式資料,指定linetype和color作為列名并為它們繪制線和點圖。
library(tidyverse)
data %>%
select(-C) %>%
pivot_longer(cols = -Date) %>%
ggplot(aes(Date, value, color = name, linetype = name))
geom_line()
geom_point()
scale_y_continuous(sec.axis = sec_axis(~./100,
name= expression(paste("B", "(", mu, "M)"))))
scale_linetype_manual(values= LINES)
theme_classic()
ylab(bquote(A ~ (mu~M)))
xlab("")

轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/476660.html
