python - 如何更新交互式绘图中的颜色条

标签 python matplotlib widget

以下代码绘制了一个二维数组,其值可以交互更改。唯一缺少的是我希望它改变 colobar。不知何故,当我修改图像时,颜色条不会自行调整。

from pyplot import *
from numpy import *
from matplotlib.widgets import Slider, Button, RadioButtons

ax = subplot(111)
subplots_adjust(left=0.25, bottom=0.25)

my_img=random((100,100))*10.

l = imshow(my_img,origin='lower');cbar=colorbar()

ax1= axes([0.25, 0.1, 0.65, 0.03], axisbg='w')

par1 = Slider(ax1, 'normalization', 1, 100., valinit=1.5)

def update(val):
  new_normalization = par1.val
  new_img=random((100,100))*new_normalization

  l.set_array(new_img)

  # this doesn't change the new colobar maximum
  cbar.vmax=new_img.max()
  cbar.vmin=0
  draw()

par1.on_changed(update)

resetax = axes([0.8, 0.025, 0.1, 0.04])
button = Button(resetax, 'Reset', color='w', hovercolor='0.975')
def reset(event):
     par1.reset()

button.on_clicked(reset)
show()

最佳答案

我自己找到了解决方案。

所需要的只是

     l.set_clim([new_img.min(), new_img.max()])

关于python - 如何更新交互式绘图中的颜色条,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21912859/

相关文章:

python - 如何配置 pycharm/intellij idea 来运行 tox 测试

python - 在不重新绘制整个图形的情况下更新图形上的艺术家 (Line2D) - axes.draw_artist() 崩溃

python - 如何使用 seaborn 的 lmplot 显示色调的颜色而不是精确值?

wordpress - 在 WordPress 3.5.x 上的自定义主题小部件中调用 wp_enqueue_media() 会导致 js 错误

python - 如何使用 pip 更新/升级包?

python - 我想使用 Vector 将分区函数从 Python 转换为 Scala

python - 停止 matplotlib 3D 曲面图切断轴标签

java - 无法从 BroadcastReceiver 更新 android 小部件

javascript - 使用 HTML/CSS/JavaScript 在 Web 应用程序中提供 PyQt4 GUI

python - Pandas 使用字典和正则表达式进行替换