This question解释了如何通过指定仰角和方位角来更改matplotlib中3D绘图的“相机位置”。例如ax.view_init(elev=10,azim=20)
。
*是否有类似的方法来指定数字的 * 缩放 - i。e.不使用鼠标?
我能找到的唯一相关问题是this one,但接受的答案涉及安装另一个库,然后也需要使用鼠标缩放。
编辑:
需要说明的是,我并不是在谈论更改图形大小(使用fig.set_size_inches()
或类似的方法)。身材尺寸精细;问题是,绘制的内容只占图的一小部分:
2条答案
按热度按时间dnph8jn41#
与
view_init
最接近的解决方案是直接设置ax.dist
。根据get_proj
的文档,“dist是眼睛观察点到物点的距离”。初始值当前使用dist = 10
进行硬编码。较低值(大于0!)将导致放大图。ax.autoscale(tight=True)
方便地完成此操作。IPython/Jupyter工作示例:
输出
dist = 10
dist = 5
lztngnrs2#
我知道这是一个老问题,但我想我会为任何人提供一个更新的答案。
不推荐使用
ax.dist
参数。最好的方法是在ax.set_box_aspect()
函数中使用'zoom'参数。例如:
这需要在调用图形画布管理器的
show()
函数之前进行设置。