Re: color-bar legend for the LisContourPlot
- To: mathgroup at smc.vnet.net
- Subject: [mg123661] Re: color-bar legend for the LisContourPlot
- From: Dan <dflatin at rcn.com>
- Date: Thu, 15 Dec 2011 04:51:58 -0500 (EST)
- Delivered-to: l-mathgroup@mail-archive0.wolfram.com
- References: <jbspea$3mj$1@smc.vnet.net> <jc9vqo$a0a$1@smc.vnet.net>
On Dec 14, 6:03 am, Dan <dfla... at rcn.com> wrote: > On Dec 9, 5:55 am, "Karamiarokhloo, M.P. (Mehdipasha)" > > <M.P.Karamiarokh... at uu.nl> wrote: > > Dear All, > > > I am using Mathematica 7 and have difficulties to plot the ListContourPlot > > of ocean data with a neat color bar (legend). > > For example if I have a temperature field range between {-2,30}, and I use > > the ColorFunction Rainbow, > > I cannot include a color-bar which has the same number of contours as the contourplot, and it does not show the related numbers for each color-shade. > > The ShowLegend function of Mathematica is very primitive. > > Has any body any suggestion? > > > Thanks you. > > P.Karami > > I like using Grid for this, and in general for constructing compound > plots. For the legend, I use a trick I learned from David Park in this > forum. Just make another contour plot. This gives you great control > over choice and labeling of the contours. Here is a simple example > where I have identified the various layout elements explicitly. > > With[{ > zmin=-2,zmax=2,delz=0.5,datasize={10,10}, > plotW=300,plotH=300,legendW, > ticklblW=30,ticklblH,grout=2, > colorset="ArmyColors"}, > > Module[{data,contours}, > contours=Range[zmin,zmax,delz]; > data=RandomReal[{zmin,zmax},datasize]; > > Grid[{{ > ListContourPlot[data,InterpolationOrder->3,Contours->contours, > ImagePadding->{{ticklblW+grout,grout},{ticklblH+grout,grout}}, > ImageSize->{plotW+ticklblW+2grout,plotH+ticklblH+2grout}, > AspectRatio->plotH/plotW, > ColorFunction->colorset], > ContourPlot[y,{x,0,1},{y,zmin,zmax},Contours->contours, > ImagePadding->{{grout,ticklblW+grout},{ticklblH+grout,grout}}, > ImageSize->{legendW+ticklblW+2grout,plotH+ticklblH+2grout}, > AspectRatio->plotH/legendW, > FrameTicks->{{None,contours},{None,None}}, > ColorFunction->colorset] > }}] > ] > ] > > -- Dan Somehow some specific assignments went missing in this post. Since I copied and pasted into the window I don't know how that could have happened, but use: legendW ticklblH to get the figure as I intended. -- Dan