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

如何用Python可视化极限的ε-δ准则?

用Matplotlib交互式可视化极限的ε-δ准则

先明确极限的ε-δ准则:

对于任意ε>0,存在δ>0,当0<|x - c|<δ时,|f(x)-L|<ε,其中L是f(x)当x趋近于c时的极限。

下面是一个基于Matplotlib和ipywidgets的交互式实现,你可以通过滑块实时调整ε和δ的值,直观观察两者的对应关系:

import matplotlib.pyplot as plt
import numpy as np
from ipywidgets import interact, FloatSlider

# 定义目标函数、极限点c和极限值L
def f(x):
    return x ** 2  # 可替换为任意你想研究的函数
c = 2
L = f(c)

# 设置绘图范围
x_min, x_max = c - 3, c + 3
y_min, y_max = L - 5, L + 5

def update_plot(epsilon, delta):
    plt.figure(figsize=(10, 6))
    x = np.linspace(x_min, x_max, 1000)
    plt.plot(x, f(x), 'b-', label='$f(x) = x^2$')
    
    # 绘制极限点(c, L)
    plt.scatter(c, L, color='red', zorder=5, label=f'$(c, L)=({c}, {L})$')
    
    # 绘制ε对应的y轴区间 [L-ε, L+ε]
    plt.axhline(y=L + epsilon, color='green', linestyle='--', label=f'$L \pm \epsilon$')
    plt.axhline(y=L - epsilon, color='green', linestyle='--')
    plt.fill_between(x, L - epsilon, L + epsilon, color='green', alpha=0.1)
    
    # 绘制δ对应的x轴区间 (c-δ, c+δ),排除x=c点
    plt.axvline(x=c + delta, color='orange', linestyle='--', label=f'$c \pm \delta$')
    plt.axvline(x=c - delta, color='orange', linestyle='--')
    # 高亮满足0<|x-c|<δ的区域
    x_delta = np.linspace(c - delta, c + delta, 1000)
    x_delta = x_delta[x_delta != c]  # 排除x=c点
    plt.fill_between(x_delta, y_min, y_max, color='orange', alpha=0.1)
    
    # 绘制满足|f(x)-L|<ε的x区域(辅助观察)
    mask = np.abs(f(x) - L) < epsilon
    plt.fill_between(x[mask], L - epsilon, L + epsilon, color='blue', alpha=0.2)
    
    plt.xlabel('x')
    plt.ylabel('f(x)')
    plt.title('ε-δ 极限准则可视化')
    plt.legend()
    plt.grid(True)
    plt.xlim(x_min, x_max)
    plt.ylim(y_min, y_max)
    plt.show()

# 创建滑块控件
interact(
    update_plot,
    epsilon=FloatSlider(min=0.1, max=4.0, step=0.1, value=1.0, description='ε:'),
    delta=FloatSlider(min=0.05, max=2.0, step=0.05, value=0.5, description='δ:')
)

代码说明:

  • 示例选用二次函数f(x)=x²,你可以直接修改f(x)函数来研究其他函数的极限(比如线性函数、正弦函数等)
  • 绿色虚线和填充区域代表ε邻域:所有满足|f(x)-L|<ε的f(x)值范围
  • 橙色虚线和填充区域代表δ邻域:所有满足0<|x-c|<δ的x值范围
  • 蓝色填充区域是同时满足两个条件的部分,拖动滑块可观察:当δ足够小时,δ邻域内的所有x对应的f(x)都会落在ε邻域内

运行代码后,通过滑块调整ε和δ的值,能直观理解"对于任意ε>0,总能找到对应的δ>0"这一核心逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 11:05:10