Re: Getting Color *names* as strings?
- To: mathgroup at smc.vnet.net
- Subject: [mg67492] Re: Getting Color *names* as strings?
- From: Jean-Marc Gulliet <jeanmarc.gulliet at gmail.com>
- Date: Wed, 28 Jun 2006 03:51:56 -0400 (EDT)
- Organization: The Open University, Milton Keynes, UK
- References: <e7qmpk$6ne$1@smc.vnet.net>
- Sender: owner-wri-mathgroup at wolfram.com
AES wrote:
> Trying out different named Colors in a plot by using
>
> greens={CinnabarGreen, ChromeOxideGreen, CobaltGreen, etc};
>
> Do[ Plot[ func, range, PlotStyle -> greens[[k]],
> PlotLabel -> ToString[greens[[k]]] ] ,
> {k, 1, Length[greens]} ];
>
> Works fine -- except the PlotLabel comes out as "RGB[num, num, num]" --
> and using SymbolName[greens[[1]]] or even SymbolName[CinnabarGreen] does
> _not_ give the string "CinnabarGreen".
>
> How can I get the *name* of each color as a string to put in PlotLabel
> or in a Text label?
>
> (Trivial problem, I agree, but just frustrating enough to be interesting)
>
What about the following workaround?
In[1]:=
<< "Graphics`Colors`"
greensTxt = {"CinnabarGreen", "ChromeOxideGreen", "CobaltGreen"};
greens = ToExpression /@ greensTxt;
Do[Plot[x^(k), {x, -2, 2}, PlotStyle -> greens[[k]],
PlotLabel -> greensTxt[[k]]],
{k, 1, Length[greens]}];
HTH,
Jean-Marc