For interval/ratio data you can see that a single color on a linear gradient scale is the best practice if you do seek to use color. You are looking to map numerical values, and the best way to show the difference between those values is with different shades of the same color. Conversely, if you are looking to highlight whether values within your data are above or below a threshold you can use two gradient scales to create a divergent color scale. It establishes a break point for your data and every data point exists either above or below it, as represented by the colors as shown here:
For ordinal data you have no knowledge of the distance between your data points. With that in mind, once again relying on the gradient scale is in your best interest to indicate the order of the data. But in this case we’re not using a linear gradient as we don’t know the distance between the data points.
Finally, when it comes to nominal data: establishing unique colors to identify sets of values is going to be most effective for your audience. For example, if you use a bar chart to look at sales across products you can use different colors, as shown below, to indicate what category the product it is. No one category is more important than the next, but every category is represented clearly. If you are going to use multiple colors in this fashion, the maximum you should be using for these sets of values is between 10 and 20, depending on the capacity of your chart. What you don’t want is your chart to become a bag of Skittles!
Looking to experiment with color further? There is a terrific website where you can experiment with a data map and select different varieties of color: http://colorbrewer2.org/. There are plenty of additional best practices about color that I want to address in my future blog posts but if your chart looks like this…please start over and try again.