0
点赞
收藏
分享

微信扫一扫

python画图|被忽视的坐标轴比例ax.set_box_aspect()函数

狐沐说 2024-11-06 阅读 3

【1】引言

自python画图这个系列开始写以来,每次都会输出不同图形。

其实越写越觉得值得钻研的东西太多,制约学习进度的往往是非常基础的知识。

今天在学习的时候,想到用参数化方程简单输出一个圆,发现竟然输出了椭圆,检查数学方程对应的代码无误后,猛然发现根本原因居然是X轴和Y轴的比例不同。

其实以前学习的进程中也曾看到设置X轴和Y轴为等比例坐标轴的代码,但从未在意,今天就一起好好学习一下,基础知识努力加深是肯定有益的。

【2】代码探索

我们尝试画一个圆形。

首先,引入画图和计算模块:

然后定义要画图:

之后定义自变量和因变量参数方程:

这里定义了一个常数r,目的是画一个半径为1的圆。

然后直接输出图形:

运行代码后的图形为:

图1

很显然,图1并未输出一个想象中的圆形,这个“圆”看上去是个“椭圆”。但仔细看坐标轴的值,这其实又是一个圆,圆心在(0,0),X轴和Y轴的范围都是[-1,1]。

追溯根本原因:X轴比Y轴长,坐标轴的比例不一样。

【3】代码修正

基于此必须修正,在官网我们找到如下教程:

Axes box aspect — Matplotlib 3.9.2 documentation

其实这里最核心的代码就是:

往程序里加入上述代码,运行后的图像为:

图2

可见图2绘制出了预期中的圆形。

【4】总给

掌握了使用ax.set_box_aspect()函数实现坐标轴等比例设置。

举报

相关推荐

0 条评论