从`zoomed_inset_axes`更改插入轴的纵横比

wil*_*ill 3 matplotlib

如何更改插入axes对象的尺寸?

我正在创建一个这样的情节:

在此输入图像描述

我希望插图更宽,zoomed_inset_axes方法默认为与底层数据相同的宽高比(我猜是明智的),但它似乎抵制了我改变它的任何尝试......

我这样使用它:

axins.axis(args.inset_extent)
os = axins.get_position()
pos = [pos.x0, pos.y0,  pos.width * 2, pos.height]
axins.set_position(pos)
Run Code Online (Sandbox Code Playgroud)

我也试过了whichset_position的kwarg,而且似乎什么也没做.

如何设置插图的位置,更重要的是改变它的纵横比?

它是一个相当长的绘图脚本的一部分,完整的代码在这里,并尝试它的几个示例基础集:6-31G.dat3-21G.dat.

只需将它们下载到自己的目录中,并将基础集文件放在一个名为dir的目录中basis_sets,然后使用命令:

./basis_sets.py -r -2 2 -b 6-31G 3-21G -a C --inset --inset-zoom 6 --inset-extent -0.03 0.03 6.7 7.7
Run Code Online (Sandbox Code Playgroud)

(./basis_sets.py --help打印出使用指南)

wil*_*ill 6

所以我在那里找到了另一个函数,只是调用了inset_axes.

它的使用方式略有不同,但确实完全符合我的要求,mark_inset辅助功能仍然有效,这很好.

所以现在我有:

ax = inset_axes(ax, width=XX, height=XX, loc=XX)
ax.axis([x0, x1, y0, y1])
Run Code Online (Sandbox Code Playgroud)

而不是变焦之一,它更灵活.