Works pretty well.
I've now implemented something like
========================== *snip* ==========================
def find_associated_colorbar( obj ):
for child in obj.get_children():
try:
cbar = child.colorbar
except AttributeError:
continue
if not cbar == None: # really necessary?
# if fetch was successful, cbar contains
# ( reference to colorbar, reference to axis
containing colorbar )
return cbar[0]
return None
========================== *snip* ==========================
How did you find out about the colormap attribute? Was that by taking
a good guess in looking at the source code, or are the public
attributes of a class documented?
Cheers,
Nico
On Tue, Feb 16, 2010 at 1:18 PM, Jae-Joon Lee <[email protected]> wrote:
> set_colorbar sets colorbar attribute. So I guess you can just check if
> Mappable.colorbar is None or not.
> Mappable.colorbar, when set, should be a tuple whose first item is an
> image for colorbar and the second item is an colorbar axes.
>
> Regards,
>
> -JJ
>
> On Tue, Feb 16, 2010 at 5:26 AM, Nico Schlömer <[email protected]>
> wrote:
>> Alright, so I dug the sources a bit and found the snippet
>>
>> ========================== *snip* ==========================
>> cb = cbar.Colorbar(cax, mappable, **kw)
>>
>> def on_changed(m):
>> #print 'calling on changed', m.get_cmap().name
>> cb.set_cmap(m.get_cmap())
>> cb.set_clim(m.get_clim())
>> cb.update_bruteforce(m)
>>
>> self.cbid = mappable.callbacksSM.connect('changed', on_changed)
>> mappable.set_colorbar(cb, cax)
>> ========================== *snap* ==========================
>>
>> I guess what happens is that a Colorbar is created, and a callback
>> function registered which adapts this very color bar whenever there is
>> a change in color maps/limits.
>> Well. -- I reckon that means that at the moment there's no way to tell
>> if a ScalarMappable has a color bar associated or not. :/ -- At least
>> I don't see how it would be possible to dig up on_changed( ) from the
>> list of callbacks and extract cb from it.
>>
>> Aaand everybody: "Fea-ture request, fea-ture request!"
>> get_colorbar() for ScalarMappables :)
>>
>> Cheers,
>> Nico
>>
>>
>>
>>
>> On Mon, Feb 15, 2010 at 7:58 PM, Nico Schlömer <[email protected]>
>> wrote:
>>>> As far as I can see, it is the other way around, i.e., mappables
>>>> (e.g., images) know about the colorbar they are connected.
>>>
>>> Well yeah, that'd be even better. I'll check out the API. -- Hints
>>> would still be appreciated of course.
>>>
>>> --Nico
>>>
>>
>
------------------------------------------------------------------------------
SOLARIS 10 is the OS for Data Centers - provides features such as DTrace,
Predictive Self Healing and Award Winning ZFS. Get Solaris 10 NOW
http://p.sf.net/sfu/solaris-dev2dev
_______________________________________________
Matplotlib-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/matplotlib-users