【Matplotlib-5】 坐标轴位置

在matplotlib的图中,默认有四个轴(图的4个边框),两个横轴(“top”、“bottom”)和两个竖轴(“left”、“right”),可以通过ax = plt.gca()方法获取,gca是“get current axes”的缩写。

先将显示的坐标图的上边框和右边框去掉,即设置它们的显示方式为不显示:

ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')

将坐标图的下边框和左边框作为坐标系的x轴和y轴,并调整坐标轴的位置:

ax.spines['bottom'].set_position(('data',0)) ## 表示将x轴设置在y=0处。
ax.spines['bottom'].set_position(('axes',0.5)) ## 表示将x轴设置在y轴范围的50%处。

“data”表示通过值来设置坐标轴的位置,“axes”表示以百分比的形式设置轴的位置。

demo

fig,axx = plt.subplots(1,2)
x1 = np.linspace(-2*np.pi, 2*np.pi, 100)
y1 = np.sin(x1)
y2 = np.cos(x1)
ax=axx[0]
ax.set_xlim(-2*np.pi, 2*np.pi)
ax.spines['top'].set_color('none')
ax.spines['right'].set_color('none')
ax.spines['bottom'].set_position(('data', 0))
ax.spines['left'].set_position(('data', 0))
ax.plot(x1, y1)
ax.plot(x1, y2)
bx=axx[1]
x2 = np.linspace(-2*np.pi, 2*np.pi, 100)
y3 = np.tan(x2)
y4 = np.arctan(x2)
bx.set_xlim(-2*np.pi, 2*np.pi)
bx.spines['top'].set_color('none')
bx.spines['right'].set_color('none')
bx.spines['bottom'].set_position(('data', 0))
bx.spines['left'].set_position(('data', 0))
bx.plot(x2, y3)
bx.plot(x2, y4)
plt.show()

image-20220228134710420

posted @   徘徊彼岸花  阅读(634)  评论(0编辑  收藏  举报
编辑推荐:
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示