<p>正如@zan在<a href="https://stackoverflow.com/a/54915930/4124317">their answer</a>中指出的那样,您可以使用<code>ax.get_shared_x_axes()</code>获得一个<code>Grouper</code>对象,它包含所有链接的轴,然后<code>.remove</code>来自这个分组程序的任何轴。问题是(正如@WMiller指出的那样),对于所有轴,股票行情器仍然是相同的。在</p>
<p>所以你需要</p>
<ol>
<li>从石斑鱼上取下轴</li>
<li>使用各自的新定位器和格式化程序设置新的Ticker</li>
</ol>
<p>完整示例</p>
<pre><code>import matplotlib
import matplotlib.pyplot as plt
import numpy as np
fig, axes = plt.subplots(3, 4, sharex='row', sharey='row', squeeze=False)
data = np.random.rand(20, 2, 10)
for ax in axes.flatten()[:-1]:
ax.plot(*np.random.randn(2,10), marker="o", ls="")
# Now remove axes[1,5] from the grouper for xaxis
axes[2,3].get_shared_x_axes().remove(axes[2,3])
# Create and assign new ticker
xticker = matplotlib.axis.Ticker()
axes[2,3].xaxis.major = xticker
# The new ticker needs new locator and formatters
xloc = matplotlib.ticker.AutoLocator()
xfmt = matplotlib.ticker.ScalarFormatter()
axes[2,3].xaxis.set_major_locator(xloc)
axes[2,3].xaxis.set_major_formatter(xfmt)
# Now plot to the "ungrouped" axes
axes[2,3].plot(np.random.randn(10)*100+100, np.linspace(-3,3,10),
marker="o", ls="", color="red")
plt.show()
</code></pre>
<p><a href="https://i.stack.imgur.com/PaakW.png" rel="nofollow noreferrer"><img src="https://i.stack.imgur.com/PaakW.png" alt="enter image description here"/></a></p>
<p>注意,在上面我只改变了x轴的记号,也只改变了主刻度。如果需要的话,对y轴和小记号也需要执行相同的操作。在</p>