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

如何在Python Matplotlib中让点精准落在X轴上

解决方法

最简单的方法有两种:

  • 适配自动轴范围:将蓝色点的y坐标设置为当前坐标轴的底部极限值。因为matplotlib会根据曲线数据自动调整坐标轴范围,若曲线最小值大于0,X轴位置会对应这个最小值而非y=0,直接用ax.get_ylim()[0]获取该值即可让点落在X轴上。
    修改后代码:

    import numpy as np
    import matplotlib.pyplot as plt
    
    x = np.linspace(-3, +3, 100)
    y = np.exp(-x**2) * (2 + np.sin(2*x) + np.sin(5*x))
    
    fig, ax = plt.subplots(figsize=(8, 4))
    
    ax.plot(x, y, linestyle='-', linewidth=2.0, color="black")
    ax.scatter(x=0.90, y=ax.get_ylim()[0], color="blue")
    
    plt.show()
    
  • 强制X轴对齐y=0:手动固定y轴下限为0,这样X轴就严格对应y=0,点直接设y=0就能落在轴上。
    修改后代码:

    import numpy as np
    import matplotlib.pyplot as plt
    
    x = np.linspace(-3, +3, 100)
    y = np.exp(-x**2) * (2 + np.sin(2*x) + np.sin(5*x))
    
    fig, ax = plt.subplots(figsize=(8, 4))
    
    ax.plot(x, y, linestyle='-', linewidth=2.0, color="black")
    ax.set_ylim(bottom=0)
    ax.scatter(x=0.90, y=0, color="blue")
    
    plt.show()
    

两者中第一种更灵活,无需手动干预轴范围;第二种则能明确保证X轴对应y=0的位置,可根据需求选择。

内容的提问来源于stack exchange,提问作者Andrew

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.25 03:36:14