matplotlib 的组标题
Group titles for matplotlib
我在 matplotlib 中使用 GridSpec 来尝试生成以下图:
但是我未能在每两列的顶部中心的所需位置添加标题。以下代码创建了上面没有标题的图:
fig = plt.figure(constrained_layout=True)
gs = fig.add_gridspec(2, 6)
for i in range(0, 6, 2):
fig.add_subplot(gs[:, i])
fig.add_subplot(gs[0, i + 1])
fig.add_subplot(gs[1, i + 1])
添加以下两行创建标题,但也会在其他图形上方创建一个图形:
title = fig.add_subplot(gs[:, i:i + 2])
title.set_title(f'title #{i}')
我必须如何更改给定的代码才能获得上述所需的结果?有没有办法隐藏新数字?有没有办法设置 titles/text 没有数字?
一种变体是隐藏新添加的图形但隐藏它们的标题
将此行添加到建议的其他两行中,情节看起来像期望的那样:
title.set_axis_off()
因此完整的脚本如下所示:
fig = plt.figure(constrained_layout=True)
gs = fig.add_gridspec(2, 6)
for i in range(0, 6, 2):
fig.add_subplot(gs[:, i])
fig.add_subplot(gs[0, i + 1])
fig.add_subplot(gs[1, i + 1])
title = fig.add_subplot(gs[:, i:i + 2])
title.set_title(f'title #{i}')
title.set_axis_off()
我在 matplotlib 中使用 GridSpec 来尝试生成以下图:
但是我未能在每两列的顶部中心的所需位置添加标题。以下代码创建了上面没有标题的图:
fig = plt.figure(constrained_layout=True)
gs = fig.add_gridspec(2, 6)
for i in range(0, 6, 2):
fig.add_subplot(gs[:, i])
fig.add_subplot(gs[0, i + 1])
fig.add_subplot(gs[1, i + 1])
添加以下两行创建标题,但也会在其他图形上方创建一个图形:
title = fig.add_subplot(gs[:, i:i + 2])
title.set_title(f'title #{i}')
我必须如何更改给定的代码才能获得上述所需的结果?有没有办法隐藏新数字?有没有办法设置 titles/text 没有数字?
一种变体是隐藏新添加的图形但隐藏它们的标题 将此行添加到建议的其他两行中,情节看起来像期望的那样:
title.set_axis_off()
因此完整的脚本如下所示:
fig = plt.figure(constrained_layout=True)
gs = fig.add_gridspec(2, 6)
for i in range(0, 6, 2):
fig.add_subplot(gs[:, i])
fig.add_subplot(gs[0, i + 1])
fig.add_subplot(gs[1, i + 1])
title = fig.add_subplot(gs[:, i:i + 2])
title.set_title(f'title #{i}')
title.set_axis_off()