0

我有一个情节,它用特定的符号和颜色绘制点。我希望我的图例显示与图中完全相同的颜色和符号。我可以手动执行此操作,但我要生成 50 多个图,并且数据将不断更新,因此我想自动化该过程。我试图创建一个字典并想搜索字典。如果在 中找到该值levels(Color_test),则将图例中的符号着色为与字典中概述的相同。我的图例代码如下:

legend(legend_X, legend_Y,
    xjust=x_adj, yjust=y_adj,
    levels(Color_test), 
    col=Labels.col,
    pch=Labels.sym,
    horiz=FALSE)
4

1 回答 1

0

您可能正在寻找某种将您的数据与字典合并的方法。这是仅使用颜色的方法,因为它只是一个示例

data <- data.frame(type = sample(letters[1:3],20,replace=T),
                   x = runif(20),
                   y = runif(20))
dict <- data.frame(type = letters[1:4],
                   color = c("red","green","blue","black"))
plot(data$x, data$y, col = merge(data,dict)$color)
legend("topleft",legend=dict$type, col=dict$color, pch=1)

您可以轻松地修改图例,以便显示实际使用的颜色。

data_dict <- merge(data,dict)
plot(y~x, col=color, data=data_dict, pch=as.vector(type))
legend("topleft",legend=unique(data_dict$type), col=unique(data_dict$color), pch=1)
于 2012-09-07T16:16:56.763 回答