Python Numpy 在具有共享轴的 3D 图和 2D 图之间添加 hspace

标签 python numpy matplotlib plot

附件是显示当前情节的图像。我正在为 2D 图设置 fig.subplots_adjust(hspace=0) 以共享一个公共(public) x 轴。我想在 3D 和 2d 图之间添加空间,但我不太确定如何完成此操作,因为 hspace 设置为 0。

fig.subplots_adjust(hspace=0)
for ax in [px_t, py_t, pz_t]:
    plt.setp(ax.get_xticklabels(), visible=False)

enter image description here

最佳答案

在这种情况下,最好使用两个单独的 GridSpec 实例。这样你就可以有两个单独的 hspace 参数。或者,您可以手动放置顶轴。

以第一个选项为例:

import matplotlib.pyplot as plt
from mpl_toolkits import mplot3d

fig = plt.figure(figsize=(8, 10))
gs1 = plt.GridSpec(2, 1, hspace=0.2)
gs2 = plt.GridSpec(8, 1, hspace=0)

ax1 = fig.add_subplot(gs1[0], projection='3d')
ax1.plot(range(10), range(10), range(10))

ax = fig.add_subplot(gs2[4])
lower_axes = [ax]
for i in range(4, 8):
    if i > 4:
        ax = fig.add_subplot(gs2[i], sharex=lower_axes[0])
    ax.plot(range(10))
    ax.locator_params(axis='y', nbins=5, prune='both')
    lower_axes.append(ax)

for ax in lower_axes:
    ax.label_outer()

plt.show()

enter image description here

关于Python Numpy 在具有共享轴的 3D 图和 2D 图之间添加 hspace,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32039604/

相关文章:

python - 计算列表中列表的最小长度

python - 清理数据框中可能存在的错误值

python - 如何在 Python 中矢量化这个峰值查找循环?

pandas - python : Best way to visualize dict of dicts

python - 在 matplotlib 3d 图中将箭头放在向量上

python - 将日期字符串转换为日期格式然后进行减法

python - 在 Python 中的多个服务器(路由器)上运行命令(以备份配置)

python - 值错误 : array is too big - cannot understand how to fix this

python - 如何使用 matplotlib 紧密布局与 Figure?

python - 如何在 Python 中将并集/交集方法作为参数传递?