python - matplotlib: any way to get existing colorbars? -


in matplotlib's object oriented style can current axes, lines , images in existing figure:

fig.axes fig.axes[0].lines fig.axes[0].images 

but haven't found way existing colorbars, have assign colorbar name when first creating it:

cbar = fig.colorbar(image) 

is there way colorbar objects in given figure if didn't assign them names?

the problem colorbar added "just another" axis, listed 'normal' axes.

import matplotlib.pyplot plt import numpy np  data = np.random.rand(6,6) fig = plt.figure(1) fig.clf() ax = fig.add_subplot(1,1,1) cax = ax.imshow(data, interpolation='nearest', vmin=0.5, vmax=0.99) print "before adding colorbar:" print fig.axes fig.colorbar(cax) print "after adding colorbar:" print fig.axes 

for me, gives result:

before adding colorbar: [<matplotlib.axes._subplots.axessubplot object @ 0x00000000080d1d68>] after adding colorbar: [<matplotlib.axes._subplots.axessubplot object @ 0x00000000080d1d68>, <matplotl ib.axes._subplots.axessubplot object @ 0x0000000008268390>] 

that is, there 2 axes in figure, second 1 new colorbar.

edit: code based on answer given here: https://stackoverflow.com/a/2644255/2073632


Comments

Popular posts from this blog

python - mat is not a numerical tuple : openCV error -

c# - MSAA finds controls UI Automation doesn't -

wordpress - .htaccess: RewriteRule: bad flag delimiters -