添加标签以绘制R中的特定值

时间:2013-06-18 16:24:05

标签: r plot labels

我创建了一个包含以下数据集的图表,我想仅为“DisplayName”列中标记为T的点添加标签。

Probe   Name    DisplayName X   Y
bob1    A   0   53.989643   7935.185
bob2    B   T   55.11423    7930.626
bob3    C   0   49.537724   6901.7715
bob4    D   0   57.280113   6687.0156
bob5    E   T   7.5517325   840.3756
bob6    F   0   62.68943    6666.6665
bob7    G   T   32.553364   3036.508
bob8    H   0   34.120102   2553.5354
bob9    I   0   127.54777   7818.89

我的想法是使用text()和which()来添加“Name”的值但我仍然坚持这样的事情:

plot(data$X, data$Y)
text(data$X, data$Y, d$Name[which(d$DisplayName =="T",  arr.ind=TRUE)])

任何帮助将不胜感激,

干杯;)

2 个答案:

答案 0 :(得分:4)

您可以将subset()with()合并为仅使用功能text()的部分数据框。

plot(df$X, df$Y)
with(subset(df,DisplayName=="T"),text(X,Y,Name))

答案 1 :(得分:3)

你可以做到这一点最简单(但可能不如Didzis的答案那么优雅)如下:

plot(data$X, data$Y)
text(data$X[d$DisplayName =="T"], data$Y[d$DisplayName =="T"], d$Name[d$DisplayName =="T"])