Mathematica Stack Exchange is a question and answer site for users of Mathematica. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

This question already has an answer here:

I've been searching for the use of ColorFunction as an Option for ListPlot, but haven't found anything about it in the documentation. When trying the code

 RandomReal[5, {10}]
 , ColorFunction -> Hue[#1, #2, 1] &

I get the error message

ListPlot::nonopt: "Options expected (instead of ColorFunction->Hue[#1,#2,1]&) beyond position 3 in ListPlot[{2.14801,2.18933,<<6>>,3.48,0.566812},ColorFunction-><<1>>&]. An option must be a rule or a list of rules."

Is it possible, and if so, how, to use ColorFunction with ListPlot? What are the arguments of the function, then?

Thanks for all help, as always!

share|improve this question

marked as duplicate by R. M. Oct 31 '13 at 20:24

This question has been asked before and already has an answer. If those answers do not fully address your question, please ask a new question.

The problem here is that you haven't used parentheses to group the function. It should be ColorFunction -> (Hue[#, #2, 1]&). See Parentheses in pure functions: # & vs. ( # &) and Using several anonymous functions mixed together for more info. Regarding your actual question, ListPlot doesn't accept a ColorFunction without Joined -> True (or ListLinePlot). Your solution is to use either of these and convert the lines to points as in this answer – R. M. Oct 31 '13 at 18:47
Either way, it's a duplicate of one of these — you can decide which :) – R. M. Oct 31 '13 at 18:48
@rm -rf: Thanks for the link, that's great! – Gabriel Oct 31 '13 at 19:17
up vote 2 down vote accepted

From the docs for the ColorFunction option to ListPlot:

ColorFunction requires at least one dataset to be Joined

{ListPlot[Sinc[Range[0, 10, 0.1]],
          ColorFunction -> Function[{x, y}, Hue[x]]],
 ListPlot[Sinc[Range[0, 10, 0.1]],
          ColorFunction -> Function[{x, y}, Hue[x]], Joined -> True]}

Mathematica graphics

share|improve this answer

Not the answer you're looking for? Browse other questions tagged or ask your own question.