title: plot() function 'col=' argument does not work when rows shuffled in 'data='
body: <p>I'm just noticing a rather strange phenomenon with the plot() function for making scatterplots via the formula notation.</p>
  
  <p>Comparing the following two commands:</p>
  
  <pre><code>plot(Sepal.Width ~ Sepal.Length, data=iris, col=Species)
  plot(Sepal.Width ~ Sepal.Length, data=iris[sample(1:nrow(iris)),], col=Species)
  </code></pre>
  
  <p>I would expect the same plot since the second command simply shuffles up the rows prior to plotting. However, we see that the colors of the points are shuffled as well in the second line. Has anyone seen this before?</p>