Gridpec内にGridSpecを作成したいと思います。Gridspec内のGridspec
import matplotlib.pyplot as plt
for i in range(40):
i = i + 1
ax1 = plt.subplot(10, 4, i)
plt.axis('on')
ax1.set_xticklabels([])
ax1.set_yticklabels([])
ax1.set_aspect('equal')
plt.subplots_adjust(wspace=None, hspace=None)
plt.show()
をしかし、私は40 gridspecsをしたい: 私はすでにここに私のコードのようないくつかのGridSpecsを作成することができます。 InすべてのGridspecは別の21グリッド(inner_grid) であり、すべてのinner_gridは1つ上のグリッドで、6つのグリッドが残りのものを埋める必要があります。 ほぼこのリンクの最後の画像のようです: https://matplotlib.org/tutorials/intermediate/gridspec.html しかし、私はそれを本当に理解していません。
私はこれを試してみました:
import matplotlib as mpl
from matplotlib.gridspec import GridSpec
import matplotlib.gridspec as gridspec
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(5,10), dpi=300)
ax = plt.subplot(gs[i])
#trying to make multiple gridspec
# gridspec inside gridspec
outer_grid = gridspec.GridSpec(48, 1, wspace=0.0, hspace=0.0)
for i in range(21):
#ax = plt.subplot(5, 5, i)
inner_grid = gridspec.GridSpecFromSubplotSpec(5, 5, subplot_spec=outer_grid[i], wspace=0.0, hspace=0.0)
a, b = int(i/4)+1, i % 4+1
for j in enumerate(product(range(1, 4), repeat=2)):
ax = plt.Subplot(fig, inner_grid[j])
ax.set_xticks([])
ax.set_yticks([])
fig.add_subplot(ax)
all_axes = fig.get_axes()