Hi Cesar! Welcome to the community!
Can I please request you to translate your question into English? There are not many people here who will understand Spanish, and hence translating will really improve your chances of getting help?
Based on what I understood from Google translate, I think you're misunderstanding. The colours are not random. You've supplied iris$Species as colour, and R detects that it is a factor variable with 3 levels. So, after plotting the points, it colours them with the 1st 3 colours in the current colour palette, which are "black", "red" and "green3" unless you change it.
If you want to change the colours as you wish, you can take a look at palette function. You can specify a vector of colours and that will become the palette. For any plot, it'll start from the first colour of the palette, and continue. If the palette ends, it'll start back at the first colour.
# checking default colour palette
palette()
#> [1] "black" "red" "green3" "blue" "cyan" "magenta" "yellow"
#> [8] "gray"
# changing palette
palette(value = c("rosybrown3", "darkorchid3", "darkolivegreen4"))
# current colour palette
palette()
#> [1] "rosybrown3" "darkorchid3" "darkolivegreen4"
Created on 2019-09-21 by the reprex package (v0.3.0)
Hope this helps.