【发布时间】:2019-09-04 12:56:36
【问题描述】:
我有一系列使用 gridspec 创建的 pyplot 子图。它们之间都有一个 hspace,这很好,除了我想保留其中三个没有任何空间。有没有办法做到这一点?目前,它们看起来像这样:
import matplotlib.pyplot as plt
import matplotlib.gridspec as gridspec
fig = plt.figure()
grid_spec = gridspec.GridSpec(nrows=10, ncols=10)
grid_spec.update(hspace=1.5)
ax1 = plt.subplot(grid_spec[0:4, :])
ax2 = plt.subplot(grid_spec[4:7, :], sharex=ax1)
# I would like to group the next 3 together
# so that they are stacked top to bottom and side by side
ax3 = plt.subplot(grid_spec[7:8, :5])
ax4 = plt.subplot(grid_spec[8:, :5], sharex=ax3)
ax5 = plt.subplot(grid_spec[8:, 5:6], sharey=ax4)
plt.show()
我希望它们像这样排列,这样我就可以绘制下面的二维 KDE 图,并在上方和右侧有相关的一维图(粗略地显示这种用油漆粗略绘制的数据):
感谢您对此提供的任何帮助。似乎找不到关于这类事情的文档。谢谢!
【问题讨论】:
-
建议将其安排为 3x1 grodspwc,然后三个较小的地块组成一个 subgridsepc,可能是双嵌套以获得较小的水平尺寸。然后你可以为小的 subgridspec 设置诸如间距和高度比之类的东西。
标签: python matplotlib data-visualization