GridSpec
の使い方
GridSpec demo
複数のグラフを並べる。グラフの大きさを変更できるので、大小のグラフを並べるのに便利。
import matplotlib.pyplot as plt from matplotlib.gridspec import GridSpec def annotate_axes(fig): for i, ax in enumerate(fig.axes): ax.text(0.5, 0.5, "ax%d" % (i+1), va="center", ha="center") ax.tick_params(labelbottom=False, labelleft=False) fig = plt.figure() fig.suptitle("Controlling subplot sizes with width_ratios and height_ratios") gs = GridSpec(2, 2, width_ratios=[1, 2], height_ratios=[4, 1]) ax1 = fig.add_subplot(gs[0]) ax2 = fig.add_subplot(gs[1]) ax3 = fig.add_subplot(gs[2]) ax4 = fig.add_subplot(gs[3]) annotate_axes(fig)
subplot2grid demo
import matplotlib.pyplot as plt def annotate_axes(fig): for i, ax in enumerate(fig.axes): ax.text(0.5, 0.5, "ax%d" % (i+1), va="center", ha="center") ax.tick_params(labelbottom=False, labelleft=False) fig = plt.figure() ax1 = plt.subplot2grid((3, 3), (0, 0), colspan=3) ax2 = plt.subplot2grid((3, 3), (1, 0), colspan=2) ax3 = plt.subplot2grid((3, 3), (1, 2), rowspan=2) ax4 = plt.subplot2grid((3, 3), (2, 0)) ax5 = plt.subplot2grid((3, 3), (2, 1)) annotate_axes(fig) plt.show()