我正在使用AndersonIrisData集合。如何使用自动对应于填充值的图例制作散点图?
我有
plot(Petal.Length,col=Species)
legend(x="bottomright",legend = c('setosa','versicolor','virginica'))
它制作了不完整的图例
答案 0 :(得分:1)
这有效:
legend(x="bottomright",legend = c('setosa','versicolor','virginica'),
col = unique(iris$Species), lty = 1)
您需要同时指定col
和lty
才能使其正常工作。请注意,颜色将按照unique(iris$Species)
的顺序进行分配,因此,如果您要以其他方式对iris
进行重新排序,则颜色可能不匹配。
您也可以使用ggplot2
进行此操作,它提供了更友好的绘图语法以及自动生成的图例:
library(tidyverse)
iris %>% mutate(ID = row_number()) %>%
ggplot(aes(ID,Petal.Length, color = Species)) + geom_point()