comp.lang.idl-pvwave archive
Messages from Usenet group comp.lang.idl-pvwave, compiled by Paulo Penteado

Home » Public Forums » archive » Explain Contour Plot to Me
Show: Today's Messages :: Show Polls :: Message Navigator
E-mail to friend 
Return to the default flat view Create a new topic Submit Reply
Explain Contour Plot to Me [message #77513] Fri, 09 September 2011 12:39 Go to previous message
David Fanning is currently offline  David Fanning
Messages: 11724
Registered: August 2001
Senior Member
Folks,

OK, forget labeling the color bar. I can live without
that.

I would consider the week a triumph if someone could just
explain to me, like I was a 10 year old child, how to
use the IDL 8.1 contour function to produce a contour
plot with four colors of my choosing. The colors will
be used like this:

Data between 0.00 and 0.25 should be red.
Data between 0.25 and 0.50 should be blue.
Data between 0.50 and 0.75 should be green.
Data between 0.75 and 1.00 should be yellow.

Here is the program I am trying to run, using some
ideas from Mark Piper's program from yesterday.
You see two different ways of trying to get the
Colorbar() colors right. One of which actually
works. But neither of the Contour() plots have
the right colors. The Coyote Graphics plot at the
end is what I am trying to achieve.

PRO ContourTest

; Create a simple, random dataset for contouring:
data = RANDOMU(-3L, 9, 9)
LoadCT, 0
TVLCT, 255, 0, 0, 0
TVLCT, 0, 0, 255, 1
TVLCT, 0, 255, 0, 2
TVLCT, 255, 255, 0, 3
TVLCT, rr, gg, bb, /GET

rgb = Transpose([[rr[0:3]],[gg[0:3]],[bb[0:3]]])
Help, rgb
rgb = Congrid(rgb, 3, 256)

levels =[0.0, 0.25, 0.5, 0.75]

; Contour function try 1.
w1 = Window(DIMENSIONS=[500, 400])
ctr=contour(data, /CURRENT, C_VALUE=levels, $
POSITION=[0.1, 0.1, 0.9, 0.8], /FILL, $
RGB_TABLE=rgb, $
AXIS_STYLE=2)
names = String(levels,FORMAT='(F0.2)')

cb = Colorbar(TARGET=ctr, $
POSITION=[0.1, 0.85, 0.9, 0.9])

rgb = Transpose([[rr[0:3]],[gg[0:3]],[bb[0:3]]])
Help, rgb

; Contour function try 2.
w2 = Window(DIMENSIONS=[500, 400])
ctr=contour(data, /CURRENT, C_VALUE=levels, $
POSITION=[0.1, 0.1, 0.9, 0.8], /FILL, $
RGB_TABLE=rgb, RGB_INDICES=Indgen(4), $
AXIS_STYLE=2)
names = String(levels,FORMAT='(F0.2)')

cb = Colorbar(TARGET=ctr, $
POSITION=[0.1, 0.85, 0.9, 0.9])

; Coyote graphics.
cgWindow, WXSize=500, WYSize=400
cgContour, data, LEVELS=levels, C_COLORS=Indgen(4), $
POSITION=[0.1, 0.1, 0.9, 0.8], /FILL, /ADDCMD
cgColorBar, NCOLORS=4, RANGE=[0,1], FORMAT='(F0.2)', $
DIVISIONS=4, /FIT, /ADDCMD
END

If you can get this to me before Nadal beats Roddick,
you will get bonus credit, which can be used to ask
function graphics questions at some time in the future. ;-)

Cheers,

David
--
David Fanning, Ph.D.
Fanning Software Consulting, Inc.
Coyote's Guide to IDL Programming: http://www.dfanning.com/
Sepore ma de ni thui. ("Perhaps thou speakest truth.")
[Message index]
 
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: How to compute SIP distortion parameters?
Next Topic: Teaching an Elephant to Dance

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ RSS ] [ PDF ]

Current Time: Wed Oct 08 15:40:46 PDT 2025

Total time taken to generate the page: 0.00460 seconds