我有一个标有数字1:200的形状图。我想创建一个解码这些数字的图例。所以我尝试了(保持20以便于阅读)。
plot(c(1,20), c(0,3), type="n")
xx <- c(0,1,1,0)
thelabels <- paste(LETTERS[1:20], LETTERS[1:20], sep="")
for (i in 1:20){
polygon(xx, c(0,0,1,1))
text(mean(xx), 0.5, i)
xx <- xx + 1
}
legend("topleft", "groups",
legend = thelabels, pch=as.character(c(1:20)),
ncol=4
)
但是,这不起作用,因为pch
只允许1长字符串。如何创建一个图例,其中键是基于数字1:200而不仅仅是每个数字的第一个数字?或做一些等同于迫使pch
接受多长度字符串的事情? (请注意,thelabels
包含较长的文字,因此我无法使用thelabels
直接标记形状。)
答案 0 :(得分:3)
这是一个总 kludge 解决方法:
plot(c(1,20), c(0,3), type="n")
xx <- c(0,1,1,0)
thelabels <- paste(1:20, " ", LETTERS[1:20], LETTERS[1:20], sep="")
for (i in 1:20){
polygon(xx, c(0,0,1,1))
text(mean(xx), 0.5, i)
xx <- xx + 1
}
legend("topleft", "groups",
legend = thelabels, pch="",
ncol=4)