【发布时间】:2016-08-05 20:23:11
【问题描述】:
这似乎是一个相当基本的问题,但我对 ggplot2 比较陌生,我似乎无法弄清楚这一点。如果我在这里误解了关于“语法”的一些基本内容,那么如果有人能指出我正确的方向,那就太好了。或者只是告诉我如何更改这些标签会很棒......
假设我有这个(假)数据:
avgTerms <- data.frame(itNum = seq(1,15),
i15 = runif(15,5,7),
i20 = runif(15,5.5,7.5),
i25 = runif(15,4,7),
i30 = runif(15,6,8))
我用它制作了一个基本的线图,如下所示:
#colour palette (colorblind-friendly)
cbb <- c("#000000", "#E69F00", "#56B4E9", "#009E73", "#F0E442", "#0072B2", "#D55E00", "#CC79A7")
#plot
avgTermsplot <- ggplot(data=avgTerms, aes(itNum, avgTerms[,2]))
avgTermsplot <- avgTermsplot + geom_line(aes(itNum, avgTerms[,2], colour=cbb[2]))
avgTermsplot <- avgTermsplot + geom_line(aes(itNum, avgTerms[,3], colour=cbb[3]))
avgTermsplot <- avgTermsplot + geom_line(aes(itNum, avgTerms[,4], colour=cbb[4]))
avgTermsplot <- avgTermsplot + geom_line(aes(itNum, avgTerms[,5], colour=cbb[5]))
avgTermsplot <- avgTermsplot + labs(x="Iteration Number", y="Avg # of Tags Applied")
print(avgTermsplot)
如您所见,图例中的标签是颜色代码。没有用。我希望它们成为 data.frame 中的列名。 (如,它们应该是i15、i20 等。)我尝试了很多东西,试图从向量 names(avgTerms)[2:5] 分配它们,但这些东西似乎都不起作用,所以我不会t 在此处列出所有内容。有没有一种简单的方法可以从字符向量中分配图例标签?
非常感谢您的帮助。
【问题讨论】: