Re: [matplotlib-devel] Implementation of cubehelix color scheme

2011-09-12 Thread Benjamin Root
On Fri, Sep 9, 2011 at 9:51 AM, Pim Schellart wrote:

> Dear Developers,
>
> In the field of Astronomy (and in science in general) we often make
> images that represent the intensity of some source.
> However the color schemes used to display images are not perceived as
> increasing monotonically in brightness.
> D.A. Green developed a color scheme that does increase monotonically
> in brightness and this scheme is already in use in several data
> display packages (e.g. CASA and AIPS, two software packages used to
> analyze radio astronomy data).
> The paper describing this algorithm can be found here
> http://arxiv.org/abs/1108.5083
> The main advantage of this color map is that images will look
> monotonically increasing in brightness to the eye both on color screen
> and when printed in black and white (as is often needed for scientific
> papers).
> Attached is a patch for _cm.py to add this colormap (named cubehelix
> as it is named in CASA) to the list of matplotlib colormaps.
>
> Complicating this a bit is the fact that the algorithm takes several
> parameters as specified in the paper referred to (start color, number
> of rotations, hugh parameter and gamma factor).
> These parameters are now set to the values they have in the default
> CASA color map but ideally they could be changed by the user.
> I could not find any other colormap that has this option so I don't
> know what the preffered way of doing this is, therefore I left the
> values hardcoded which should be ok for most applications anyway.
> Please let me know what you think.
>
> Kind regards,
>
> Pim Schellart
>
>
Do we want to add this colormap in the upcoming release, or do we want to
wait for the next release?

Ben Root
--
Doing More with Less: The Next Generation Virtual Desktop 
What are the key obstacles that have prevented many mid-market businesses
from deploying virtual desktops?   How do next-generation virtual desktops
provide companies an easier-to-deploy, easier-to-manage and more affordable
virtual desktop model.http://www.accelacomm.com/jaw/sfnl/114/51426474/___
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel


Re: [matplotlib-devel] Implementation of cubehelix color scheme

2011-09-12 Thread Eric Firing
On 09/09/2011 04:51 AM, Pim Schellart wrote:
> Dear Developers,
>
> In the field of Astronomy (and in science in general) we often make
> images that represent the intensity of some source.
> However the color schemes used to display images are not perceived as
> increasing monotonically in brightness.
> D.A. Green developed a color scheme that does increase monotonically
> in brightness and this scheme is already in use in several data
> display packages (e.g. CASA and AIPS, two software packages used to
> analyze radio astronomy data).
> The paper describing this algorithm can be found here
> http://arxiv.org/abs/1108.5083
> The main advantage of this color map is that images will look
> monotonically increasing in brightness to the eye both on color screen
> and when printed in black and white (as is often needed for scientific
> papers).
> Attached is a patch for _cm.py to add this colormap (named cubehelix
> as it is named in CASA) to the list of matplotlib colormaps.
>
> Complicating this a bit is the fact that the algorithm takes several
> parameters as specified in the paper referred to (start color, number
> of rotations, hugh parameter and gamma factor).
> These parameters are now set to the values they have in the default
> CASA color map but ideally they could be changed by the user.
> I could not find any other colormap that has this option so I don't
> know what the preffered way of doing this is, therefore I left the
> values hardcoded which should be ok for most applications anyway.
> Please let me know what you think.

Adding this colormap would be good, but I would much prefer to see it 
done in a more general and readable fashion, with a docstring including 
some explanation and a citation with link to the reference.  (A little 
editing of your message above would take care of it.)

I would suggest making a "cubehelix" function, taking the colormap 
parameters as kwargs with the present defaults, and returning the 
dictionary.  The lambda functions can be replaced with named functions 
nested in the main function.  Line lengths should be no greater than 80 
characters.

The _cubehelix_data would then be created by a call to the function.

I think that this re-arrangement and documentation could be done very 
easily and quickly, and would make the contribution much nicer.  It 
would also leave in place the mechanism for a user to create a variation 
of the cubehelix; the cubehelix function could be imported into the cm 
namespace, so that one could make a custom data dictionary for use in 
register_cmap.

Submission via github would be nice, but is not required.

Eric

>
> Kind regards,
>
> Pim Schellart
>

--
Doing More with Less: The Next Generation Virtual Desktop 
What are the key obstacles that have prevented many mid-market businesses
from deploying virtual desktops?   How do next-generation virtual desktops
provide companies an easier-to-deploy, easier-to-manage and more affordable
virtual desktop model.http://www.accelacomm.com/jaw/sfnl/114/51426474/
___
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel


Re: [matplotlib-devel] Implementation of cubehelix color scheme

2011-09-12 Thread Christoph Gohlke


On 9/12/2011 10:35 AM, Benjamin Root wrote:
> On Fri, Sep 9, 2011 at 9:51 AM, Pim Schellart  > wrote:
>
> Dear Developers,
>
> In the field of Astronomy (and in science in general) we often make
> images that represent the intensity of some source.
> However the color schemes used to display images are not perceived as
> increasing monotonically in brightness.
> D.A. Green developed a color scheme that does increase monotonically
> in brightness and this scheme is already in use in several data
> display packages (e.g. CASA and AIPS, two software packages used to
> analyze radio astronomy data).
> The paper describing this algorithm can be found here
> http://arxiv.org/abs/1108.5083
> The main advantage of this color map is that images will look
> monotonically increasing in brightness to the eye both on color screen
> and when printed in black and white (as is often needed for scientific
> papers).
> Attached is a patch for _cm.py to add this colormap (named cubehelix
> as it is named in CASA) to the list of matplotlib colormaps.
>
> Complicating this a bit is the fact that the algorithm takes several
> parameters as specified in the paper referred to (start color, number
> of rotations, hugh parameter and gamma factor).
> These parameters are now set to the values they have in the default
> CASA color map but ideally they could be changed by the user.
> I could not find any other colormap that has this option so I don't
> know what the preffered way of doing this is, therefore I left the
> values hardcoded which should be ok for most applications anyway.
> Please let me know what you think.
>
> Kind regards,
>
> Pim Schellart
>
>
> Do we want to add this colormap in the upcoming release, or do we want
> to wait for the next release?
>
> Ben Root
>


Please also consider adding the "coolwarm" color map suggested before by 
Sameer Grover 
. That 
message has a patch attached.

The colormap is used by Kitware (ParaView) and was designed around these 
requirements:

"""
– The map yields images that are aesthetically pleasing.
– The map has a maximal perceptual resolution.
– Interference with the shading of 3D surfaces is minimal.
– The map is not sensitive to vision deficiencies.
– The order of the colors should be intuitively the same for all people.
– The perceptual interpolation matches the underlying scalars of the map.
"""


Thank you,

Christoph




--
Doing More with Less: The Next Generation Virtual Desktop 
What are the key obstacles that have prevented many mid-market businesses
from deploying virtual desktops?   How do next-generation virtual desktops
provide companies an easier-to-deploy, easier-to-manage and more affordable
virtual desktop model.http://www.accelacomm.com/jaw/sfnl/114/51426474/
___
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel


[matplotlib-devel] Tight layout function

2011-09-12 Thread Gökhan Sever
Hi,

Thanks for the newly added plt.tight_layout function to the master mpl
branch. This saves me from manually adjusting the spacing around the figure
canvas each time I need to use the full available figure space. For this I
was switching from Qt4Agg to WXAgg backend, so that I was able to read
right/left/top/bottom/hspace/wspace parameters numerically and then feed
into plt.subplot_adjust function. I guess there is no need for this long
path with the addition of this new adjuster function.

-- 
Gökhan
--
Doing More with Less: The Next Generation Virtual Desktop 
What are the key obstacles that have prevented many mid-market businesses
from deploying virtual desktops?   How do next-generation virtual desktops
provide companies an easier-to-deploy, easier-to-manage and more affordable
virtual desktop model.http://www.accelacomm.com/jaw/sfnl/114/51426474/___
Matplotlib-devel mailing list
Matplotlib-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-devel