问题:创建两个子图后共享它们的 x 轴。
解决方案:
共享轴通常是在创建轴时使用 sharex 参数完成的。但是,在已经创建子图的情况下,可以使用 ax2.sharex(ax1) 共享它们的 x 轴。
这里有一个 Python 代码示例来说明这种方法:
<code class="python">import matplotlib.pyplot as plt t = np.arange(1000) / 100 x = np.sin(2 * np.pi * 10 * t) y = np.cos(2 * np.pi * 10 * t) fig = plt.figure() ax1 = plt.subplot(211) # Create subplot 1 ax2 = plt.subplot(212) # Create subplot 2 # Plot data in the subplots ax1.plot(t, x) ax2.plot(t, y) # Share the x-axes between the subplots ax2.sharex(ax1) # Disable tick labels for one of the subplots to avoid duplication ax1.set_xticklabels([]) plt.show()</code>
在此代码中,创建子图后,我们使用 ax2.sharex(ax1) 链接两个子图的 x 轴。为了防止重复的刻度标签,我们手动禁用 ax1。
或者,您可以使用循环来共享子图列表的 x 轴,例如:
<code class="python">axes = [ax1, ax2, ax3] for ax in axes[1:]: ax.sharex(axes[0])</code>
以上是创建后如何动态共享 Matplotlib 中子图的 x 轴?的详细内容。更多信息请关注PHP中文网其他相关文章!