|
From: Curtis C. <cu...@hi...> - 2004-12-05 05:37:16
|
I think the PLplot colormap setting functions expect color ranges clamped
between [0,1].
Cheers,
Curtis
* * * * * * * * * * * * * * * * * * * * * * * * * * * *
* Curtis S. Cooper, Graduate Research Assistant *
* Lunar and Planetary Laboratory, University of Arizona *
* http://www.lpl.arizona.edu/~curtis/ *
* Kuiper Space Sciences, Rm. 318 *
* 1629 E. University Blvd., *
* Tucson, AZ 85721 * * * * * * * * * * * * * * *
* Wk: (520) 621-1471 *
* * * * * * * * * * * *
On Sat, 4 Dec 2004, Tune Kamae wrote:
> Dear PLplot experts,
>
> I have been using PLplot through python/numarray to plot
> astronomical intensity maps in false color for 2 years.
> Ever since I wrote the first shaded contour plot, I have
> been wishing to improve the contrasts and the dynamic
> range of the Hue mapping. I came up with an inproved
> mapping using RGB (can also be in HSV) by making
> the function non0linear. This requires many reference
> points (eg. 20 points).
>
> Following the manual description on plshades and
> the python example xw11.py, I wrote the following
> cmap1_init_3D. But it doesn't work.
>
> I would appreciate any guidance or suggestion.
>
> T. Kamae, Stanford Linear Accelerator Center.
>
> ----------------------------------------------------------------------------
> # Color map 1 in RGB space for plot3D
> # (from plplot/examples/python/xw11.py)
>
> def cmap1_init_3D(self, gray):
> """Routine for defining a specific color map 1 in
> RGB space. If gray is true, use basic grayscale
> variation from half-dark to light. Otherwise use
> a parameteized mapping to R(z), G(z), and B(z) where
> z=[0,1]. i=0 corresponds to z=1.0, the brightest
> color for this implementation.
> """
>
> # Independent variable of control points.
> i = arange(0.0, 1.05, 0.05)
> if gray:
> # Red for control points.
> r = arange(241.0, 0.0, -12.0)
> # Green for control points.
> g = arange(241.0, 0.0, -12.0)
> # Blue for control points.
> b = arange(241.0, 0.0, -12.0)
> else:
> z=arange(1.0,1.05,0.05)
> z[20]=1.0
> # Red for control points.
> r = 113.9*sin(7.64*z**1.705+0.701)-916.1*(z+1.755)**1.862\
> +3587.9*z+2563.4
> rr = clip(r,0.0,255.0)
> # Green for control points.
> g = 70.0*sin(8.7*z**1.26-2.418)+151.7*z**0.5+70.0
> gg = clip(g,0.0,255.0)
> # Blue for control points.
> b = 194.5*z**2.88+99.72*exp(-77.24*(z-0.742)**2)\
> +45.40*z**0.089+10.0
> bb = clip(b,0.0,255.0)
>
> # Integer flag array is zero (no interpolation along far-side
> # of colour figure.)
> rev = array([0]+[1]*19+[0])
> # number of cmap1 colours is 256 in this case.
> # smaller the number of colours, the clearer the z contour
> #plscmap1n(256)
> plscmap1n(21)
> # Interpolate between control points to set up cmap1.
> plscmap1l(1, i, rr, gg, bb, rev)
>
>
>
>
> -------------------------------------------------------
> SF email is sponsored by - The IT Product Guide
> Read honest & candid reviews on hundreds of IT Products from real users.
> Discover which products truly live up to the hype. Start reading now.
> http://productguide.itmanagersjournal.com/
> _______________________________________________
> Plplot-general mailing list
> Plp...@li...
> https://lists.sourceforge.net/lists/listinfo/plplot-general
>
|