我正在尝试使用ggplot2绘制以下数据帧,并添加了名为Condition的列,该列具有Yes或No值。
ID Diagnosis Age_at_Diagnosis Condition
0 A-1 Birth 0 No
1 A-1 Lung cancer 25 Yes
4 A-1 Death 50 No
5 A-2 Birth 0 No
6 A-2 Brain cancer 12 No
8 A-2 Skin cancer 20 No
11 A-2 Current age 23 No
12 A-3 Birth 0 No
13 A-3 Brain cancer 30 No
15 A-3 Lung cancer 33 Yes
17 A-3 Current age 35 No
我已经使用下面的代码成功创建了绘图(忽略是否有几个值,这是我正在处理的原始数据)。
ggplot(new, aes(
new$Age_at_Diagnosis,
new$Individual_ID,
color= new$Diagnosis,
shape = new$Diagnosis,
group=new$Individual_ID
)) +
geom_line(linetype="solid", color="black", size=0.25) +
geom_point( size=2.5) +
scale_color_manual(name="Diagnosis", values = c("red", "black", "dark blue","black", "maroon")) +
scale_shape_manual(name = "Diagnosis",values = c(16,8,124,15)) +
ggtitle("Lung Cancer Diagnosis Only") +
xlab("Age at Diagnosis") +
ylab("Individual ID") +
theme_minimal()
我试图弄清楚如何将条件列值添加到绘图中。如果“条件”列中的“诊断”为“是”,我想在该点(诊断)上添加标记/圆形。
我尝试使用geom_point(data=new[new$Condition=='Yes',],pch=21,fill=NA,size=4)
,但没有运气,结果显示为“错误:为连续刻度提供离散值”或“错误:美学必须为长度1或与数据相同(11) :x,y,颜色,组”错误。
我应该指出,只有在诊断出肺癌且没有其他癌症的情况下,情况才是。