共享轴的matplotlib子图

时间:2019-12-18 16:53:17

标签: python matplotlib

我很难理解matplotlib子图如何允许它们之间共享轴。我看到了一些示例,但是我无法修改它以适合我的用例。在这里我用制服代替了我的数据,所以情节不会很有趣,但是...

import numpy as np
import matplotlib.pyplot as plt
import matplotlib as mpl
from matplotlib import cm

d = 4
n1 = 100000
n2 = 100

background_data = np.random.uniform(size=(n1,d))
foreground_data = np.random.uniform(size=(n2,d))

fig = plt.figure()

for i in np.arange(d):
    for j in np.arange(d):
        if i != j:
            ax = fig.add_subplot(d,d,1+i*d+j)
            ax = plt.hist2d(background_data[:, i], background_data[:, j],
                       bins=3*n2,
                       cmap=cm.get_cmap('Greys'),
                       norm=mpl.colors.LogNorm())
            ax = plt.plot(foreground_data[:,i],foreground_data[:,j],'o',markersize=0.2)

问:如何共享所有图的x和y轴?

1 个答案:

答案 0 :(得分:3)

到目前为止,最简单的选择是使用sharex的{​​{1}}和sharey自变量。

plt.subplots

Plot