如何在python中演示辛普森/梯形规则?

如何在python中演示辛普森/梯形规则?,python,scipy,Python,Scipy,我想画一个图来说明简单函数(y=x^2)的辛普森/梯形积分公式。scipy的simps和trapz函数有助于计算面积,但我还想在原始曲线上过度绘制梯形/抛物线。我想知道是否有任何现有的惯例,如果没有,它将有助于获得一些关于如何制作这些情节的想法 import numpy as np from scipy.integrate import simps, trapz x=np.arange(9) y=x**2 area=simps(y,x) print are

我想画一个图来说明简单函数(y=x^2)的辛普森/梯形积分公式。scipy的simps和trapz函数有助于计算面积,但我还想在原始曲线上过度绘制梯形/抛物线。我想知道是否有任何现有的惯例,如果没有,它将有助于获得一些关于如何制作这些情节的想法

   import numpy as np
   from scipy.integrate import simps, trapz

   x=np.arange(9)
   y=x**2

   area=simps(y,x)
   print area

   area=trapz(y,x)
   print area

   plot(y,x)

我建议使用matplotlib,它具有
fill\u等函数

import numpy as np
from scipy.integrate import simps, trapz
import matplotlib.pyplot as plt

def f(x):
    return x**2

fig, ax = plt.subplots(1,1)

#Continous curve
x=np.arange(0,9,0.01)
y=f(x)
ax.plot(y,x, 'k-')

#Trapizium
xstep = np.arange(0,10,3)
area=trapz(y,x)
print area
ax.fill_between(f(xstep), 0, xstep)

#Simpsons
area=simps(y,x)
print area
#etc etc

plt.show()

如果我只做了陷阱近似,您需要定义一个函数来为fill between绘制simpsons规则近似

没有用于绘制所需内容的标准例程。试着自己画情节,如果你有困难,也许这里有人会帮助你。事实上,你只是说“我有这个想法,为我写代码来实现它。”