Mathematica 9 is now available
Services & Resources / Wolfram Forums
-----
 /
MathGroup Archive
2007
*January
*February
*March
*April
*May
*June
*July
*August
*September
*October
*Archive Index
*Ask about this page
*Print this page
*Give us feedback
*Sign up for the Wolfram Insider

MathGroup Archive 2007

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

Search the Archive

Re: Density Plot coloring issue

  • To: mathgroup at smc.vnet.net
  • Subject: [mg79749] Re: Density Plot coloring issue
  • From: Yvon <ymgrigsb at yahoo.com>
  • Date: Fri, 3 Aug 2007 06:31:18 -0400 (EDT)
  • References: <f8s3jr$3j6$1@smc.vnet.net>

I found one error in my formula, but this doesn't seem to fix the
overall problem.  Also, I noticed it did something wierd to the data
density code when I pasted it into the original post.  So I will
repaste below with the fix to my GetColor function and cleaned up
code.  The index could be returned as 0 which there is no such thing
in my CellColor table.  A simple if statement fixed that.  But I'm
still coming up with cells that are white for the max value and
minimum above 0 even though the color function has returned the
expected color.

cList = {{6.75, 5.85, 0., 6.39, 7.41, 0.}, {6.4, 5.57, 0., 6.6, 6.68,
0.}, {5.99, 5.51, 0., 6.24, 6.37, 0.}, {6.1, 5.72, 3.93, 5.92,
   5.89, 0.}, {5.71, 5.85, 6.05, 5.92, 6.06, 0.}, {5.62, 5.64, 5.61,
5.42, 5.14, 0.}, {0, 0, 0, 0, 0, 0}}


numColors = 10
minLWC = 0
maxLWC = 10

CellColor[index_] := Module[{cTable, s},
  (*White,purple,blue, light blue, light green, kahki, light yellow,
light orange, pink, red *)
  cTable = {{1, 1, 1}, {0.5, 0, 0.5}, {0.4, .6, 0.9}, {0.7, .9, .96},
{.8, 1, .7}, {.6, 0.8, .2}, {1, 1, 0.5}, {1, .84, 0}, {1, .75, .8}, {.
86, .08, .24}};
  s = Partition[Map[RGBColor, cTable], 1];
  RGBColor[cTable[[index]]]
  ]

  (*Create a separate function with one parameter x =
  index called from previous function that returns RGBColor object*)
  GetColor[x_] := (p = Round[Abs[(x - min)*numColors/(max - min)]] ;
    If[p == 0, p = 1, p]; CellColor[p]);

  ListDensityPlot[lData,  InterpolationOrder -> 0,
   ColorFunction -> GetColor, ColorFunctionScaling -> {False},
   Mesh -> {numCols - 1, numRows - 1}, PlotRangePadding -> None,
   DataRange -> {{0, numCols}, {0, numRows}},
   Epilog -> {Hue[0, 0, 0], MapIndexed[Text[#1, #2 - .5] &,
Transpose[lData], {2}]}]
    ]



  • Prev by Date: Re: Density Plot coloring issue
  • Next by Date: Re: Density Plot coloring issue
  • Previous by thread: Re: Density Plot coloring issue
  • Next by thread: Re: Density Plot coloring issue