我正在尝试使用带有 2 个数据帧的 ggplot2 来创建一个函数。
第一个数据框:
head(DF1, 15) # with 280 rows
SeqTech S1 S2 C1 C2
AM.AD.1 Sanger -1.0436581 -0.37756924 -0.7685488 -0.0441722
AM.AD.2 Sanger -0.5714184 -0.60946292 -0.7685488 -0.0441722
AM.F10.T1 Sanger -0.6000866 -0.09649056 -0.7685488 -0.0441722
AM.F10.T2 Sanger -0.5232439 -0.25033653 -0.7685488 -0.0441722
DA.AD.1 Sanger -0.8911968 -0.16821038 -0.7685488 -0.0441722
DA.AD.1T Sanger -0.9517195 -0.11437614 -0.7685488 -0.0441722
DA.AD.2 Sanger -0.8475660 0.17727014 -0.7685488 -0.0441722
DA.AD.3 Sanger -1.1066888 0.06575432 -0.7685488 -0.0441722
DA.AD.3T Sanger -0.9968716 0.07856669 -0.7685488 -0.0441722
DA.AD.4 Sanger -1.0187115 -0.05531954 -0.7685488 -0.0441722
ES.AD.1 Sanger -0.2993661 0.57074665 -0.7685488 -0.0441722
ES.AD.2 Sanger -0.7723388 -0.28290136 -0.7685488 -0.0441722
ES.AD.3 Sanger -0.5537318 -0.13383022 -0.7685488 -0.0441722
ES.AD.4 Sanger -0.7448872 0.11534246 -0.7685488 -0.0441722
FR.AD.1 Sanger -0.6601532 -0.01037697 -0.7685488 -0.0441722
以及 SeqTech 栏目中的 3 个类别
unique(DF1$SeqTech)
[1] Sanger Illumina Pyro454
Levels: Illumina Pyro454 Sanger
第二个数据框是
DF2
SeqTech Cent1 Cent2
1 Illumina -0.7304342 0.031788410
2 Pyro454 0.6077754 -0.005785419
3 Sanger -0.7685488 -0.044172203
这是我的代码:
Category = "SeqTech"
#generate the points (sites: S1 and S2)
P <- ggplot(DF1, aes(x = S1, y = S2)) +
geom_vline(xintercept = 0, linetype="dashed", size = 0.25, color= "#999999") +
geom_hline(yintercept = 0, linetype="dashed", size = 0.25, color= "#999999") +
geom_point(size = 2, alpha=0.7, aes_string(color= Category, shape=Category))
现在添加使用 DF1 将每个点与平均点连接的线:C1 和 C2
P <- P + geom_segment(data = DF1, aes(xend = C1, yend = C2, colour=DF1[, Category]), alpha=0.7, linetype="dashed")
现在我将使用数据框 DF2 为代表平均值的每个类别添加一个点
P <- P + geom_point(data = DF2, x=DF2[,"Cent1"], y=DF2[,"Cent2"], size = 1.5, alpha= 0.9, shape= 21, aes_string(color=Category), fill="black")
这是获得的情节:
所以我的问题是,我想添加第二个图例,我的意思是第一个图中的图例所有元素都重叠在一个图例中,我想要第一个图例直到: geom_segment(data = DF1, aes(xend = C1 ,yend = C2.......和第二个图例使用从数据框 DF2 获得的数据,在一秒钟内有一个点,图例像“ o Centroid ”:
对不起图片,已编辑!!!!
有什么建议吗??
非常感谢 !!!!