Services & Resources / Wolfram Forums / MathGroup Archive
-----

MathGroup Archive 2013

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: Multiple Line coloring and Dashing in ListPlot

  • To: mathgroup at smc.vnet.net
  • Subject: [mg131429] Re: Multiple Line coloring and Dashing in ListPlot
  • From: Bill Rowe <readnews at sbcglobal.net>
  • Date: Fri, 5 Jul 2013 06:01:46 -0400 (EDT)
  • Delivered-to: l-mathgroup@mail-archive0.wolfram.com
  • Delivered-to: l-mathgroup@wolfram.com
  • Delivered-to: mathgroup-outx@smc.vnet.net
  • Delivered-to: mathgroup-newsendx@smc.vnet.net

On 7/3/13 at 5:01 AM, graser at gmail.com (graser) wrote:

>I have a question about the coloring and dashing lines in listplot.
>For example, Let's say there is a multiple data set like data =
>Table[RandomReal[{2 i, 2 i + 1}, {20}], {i, 9}];

>I want to plot them in listplot or listloglogplot with all different
>color and all different dashing with (joined -> True). How can I do
>it automatically or minimum option?

Here is an example of a list plot which has different dashing
and different colors

data = Table[RandomReal[{2 i, 2 i + 1}, {20}], {i, 3}];
ListPlot[data, Joined -> True,
  PlotStyle -> {{Red, Dashing[.01]}, {Green, Dashing[.015]}, {Blue,
     Dashing[.02]}}, Frame -> True]

Here, I have reduce the number of lines to be plotted for
clarity. You could replace the specific hard coded plot styles
with a list generated using Table, i.e., something like

styles=Table[{Hue[1/n],Dashing[5 n/1000]},{n,3}];
data = Table[RandomReal[{2 i, 2 i + 1}, {20}], {i, 3}];
ListPlot[data, Joined -> True, PlotStyle -> styles, Frame -> True]

>The default number of coloring
>in mathematica (I am in still 8) is 4. after that, it repeat same
>color.

Actually, version 8 does not repeat the same color after 4. But
the first color and 5 color with the default colors are quite
similar and difficult to distinguish.

By default the first color is

In[9]:= ColorData[1][1]

Out[9]= RGBColor[0.2472,0.24,0.6]

and the fifth color is:

In[10]:= ColorData[1][5]

Out[10]= RGBColor[0.24,0.353173,0.6]

A way to avoid this issue is to use one of the named color
schemes such as "Rainbow". See guide/ColorSchemes in the
documentation center. But do note for this to be visually
effective you need to map number of colors you want over the
range of 0 to 1. In fact, the short snippet of code I show above
for creating a list of styles using Table is fine for 3 colors
but will not be visually effective for a large number of colors.
There will be very little visual difference between Hue[1/n] and
Hue[1/(n+1)] when n gets large.




  • Prev by Date: Re: Calculating derivate in Mathematica 9 giving wrong result
  • Next by Date: Re: Multiple Line coloring and Dashing in ListPlot
  • Previous by thread: Re: Multiple Line coloring and Dashing in ListPlot
  • Next by thread: Re: Multiple Line coloring and Dashing in ListPlot