Assume there are three groups of 2-dimensional coordinates data = RandomVariate[NormalDistribution[#, .25], {15, 2}] & /@ Range[3]; Is there a way to `ListPlot` these data points just like ListPlot[data, PlotStyle -> {Red, Blue, Green}] ![][1] but instead of the dots with the result of an integer-valued function, e.g. `Round[Norm[#]]&`, shown in the according colour? I already had a look at <a href="https://mathematica.stackexchange.com/questions/7408/listplot-with-plotmarkers-determined-by-point">this</a> and <a href="https://mathematica.stackexchange.com/questions/1854/adding-labels-to-points-in-listplot">that</a> question, but wasn't able to modify the answers to obtain the desired result. [1]: https://i.sstatic.net/CV9BD.png