猿问

matplotlib:更改活动轴

我有多个对象可以可视化不同的事物。它们都被传递到单个 Figure 实例的引用并创建自己的轴对象(同时只有一个处于活动状态)


演示代码是:


import numpy as np

import matplotlib.pyplot as plt

# the visualization objects are jupyter widgets in production code

%matplotlib widget

plt.ioff()


def update_fig(f):

    f.canvas.draw()

    f.canvas.flush_events()


f = plt.figure()


# first visualizer is created and plots into the figure

ax1 = f.add_subplot(1,1,1, label="visualizer_1")

img1 = np.random.randint(0, 256, (20, 20, 3))

vis1 = ax1.imshow(img1)

update_fig(f)


# second visualizer is created and plots into the figure

ax2 = f.add_subplot(1,1,1, label="visualizer_2")

vis2 = ax2.plot(np.linspace(0, 5), 2 * np.linspace(0, 5))

update_fig(f)

然后如何切换要在图中显示的轴?已经尝试plt.sca(ax1)返回到第一个可视化,但没有奏效。


当然,我可以为每个可视化对象使用不同的图形,但由于我有很多,我宁愿避免这种情况。


凤凰求蛊
浏览 80回答 1
1回答
随时随地看视频慕课网APP

相关分类

Python
我要回答