You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jupyter中使用pylab绘图:如何将刻度置于坐标轴本身?

实现方法

完全可以实现,给你两种常见的实现方式:

1. 保留原有绘图框,同时显示四个边的刻度

如果只是想在原有绘图框的顶部和右侧也显示刻度(和左下侧同时存在),直接用tick_params方法配置即可:

import pylab as plt

# 生成示例数据
x = plt.linspace(-5, 5, 100)
y = x ** 2

# 绘制函数曲线
plt.plot(x, y)

# 配置刻度:让x轴顶部、y轴右侧都显示刻度,标签可按需开启
plt.tick_params(
    axis='both',  # 对x和y轴都生效
    which='both',  # 包含主、副刻度
    top=True, right=True,  # 显示顶部和右侧的刻度线
    labeltop=False, labelright=False  # 不显示顶部和右侧的刻度标签,需要的话改成True
)

plt.show()

2. 将坐标轴移到图中心,刻度显示在坐标轴本身

如果想让坐标轴(x=0、y=0)直接作为绘图的轴线,刻度显示在这些轴线上,可以调整坐标轴边框(spines)的位置:

import pylab as plt

# 生成示例数据
x = plt.linspace(-5, 5, 100)
y = plt.sin(x)

# 绘制函数曲线
plt.plot(x, y)

# 获取当前绘图轴对象
ax = plt.gca()

# 隐藏不需要的顶部、右侧边框
ax.spines['top'].set_visible(False)
ax.spines['right'].set_visible(False)

# 将左侧边框移到x=0的位置(即y轴)
ax.spines['left'].set_position(('data', 0))
# 将底部边框移到y=0的位置(即x轴)
ax.spines['bottom'].set_position(('data', 0))

# 配置刻度:只在中心坐标轴上显示刻度和标签
ax.tick_params(axis='x', bottom=True, top=False, labelbottom=True)
ax.tick_params(axis='y', left=True, right=False, labelleft=True)

# 要是想同时保留原有绘图框的刻度,把top/right设为True即可,比如:
# ax.tick_params(axis='x', bottom=True, top=True, labelbottom=True, labeltop=False)

plt.show()

内容的提问来源于stack exchange,提问作者Marc Le Bihan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.12 00:21:11