Matplotlib通过axis()配置坐标轴数据详解

坐标轴范围设置

axis()可以直接传入列表[xmin,xmax,ymin,ymax]进行范围设置,

分别可以使用plt.axis()或者画布对象.axis()进行配置

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 20, 100)
y = x*2
plt.plot(x, y, 'r')
plt.axis([0,30,0,100])
plt.savefig('plot1.png')
plt.show()

在不进行传参的时候,调用plt.axis()和画布对象.axis()会返回坐标轴范围元组

import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 20, 100)
y = x*2
plt.plot(x, y, 'r')
plt.axis([0,30,0,100])
print(plt.axis())
print(plt.gca().axis())
plt.savefig('plot1.png')
plt.show()
# (0.0, 30.0, 0.0, 100.0)
# (0.0, 30.0, 0.0, 100.0)

上述代码中的plt.gca()的作用是获取当前的画布对象

关于坐标轴范围配置的详细方法可以参考我的另一篇博客Matplotlib 画板画布设置,网格配置,及刻度设置_matplotlib设置刻度个数-CSDN博客

坐标轴比例设置和裁切

axis()方法中可以直接传入对应的比例设置方法或裁切方法的字符串,主要包括以下几种

'on':打开坐标轴(默认行为)。

'off':关闭坐标轴(不显示刻度和框线)。

'equal':设置 x 轴和 y 轴的比例相同(即单位长度相同)。

'scaled':设置坐标轴自动缩放,使得单位长度相同,但不一定是正方形。

'tight':使坐标轴紧贴数据范围。

'auto':自动调整坐标轴以适应数据。

'image':缩放数据并使其适合坐标轴,保持原始纵横比。

'square':设置坐标轴为正方形。

这里较为常用的有‘off’关闭坐标轴

‘equal’强行使两轴的单位长度相同(注意:这样会破坏原本的坐标轴范围设置)

‘scaled’scale具有调节、绘制的意思,这里也会使两轴单位长度相同,并会根据图像的实际大小范围进行图像裁切

off
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 20, 100)
y = x*2
plt.plot(x, y, 'r')
plt.axis([0,30,0,100])
plt.axis('off')

plt.savefig('plot1.png')
plt.show()

equal
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 20, 100)
y = x*2
plt.plot(x, y, 'r')
plt.axis([0,30,0,100])
plt.axis('equal')

plt.savefig('plot1.png')
plt.show()

 
scaled
import numpy as np
import matplotlib.pyplot as plt

x = np.linspace(0, 20, 100)
y = x*2
plt.plot(x, y, 'r')
plt.axis([0,30,0,100])
plt.axis('scaled')

plt.savefig('plot1.png')
plt.show()

 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值