如何使用Python找到定积分?
定积分是不定积分之后的扩展,定积分有极限[a,b]。它给出了给定界限之间的曲线面积。
它表示以 a 和 b 为界的曲线 F(x) 的面积,其中 a 是下限,b 是上限。
在本文中,我们将讨论如何在Python求解定积分,并且还将使用 matplotlib 可视化它们之间的区域。我们还将使用 NumPy 模块来定义我们正在集成的变量的范围。让我们从安装模块开始。
需要的模块:
- matplotlib :我们将使用它来可视化由定积分形成的图形下的区域。
- numpy :定义定积分范围的辅助库。
- sympy:用于轻松计算积分数值解的库。
方法
用于计算曲线下面积
- 导入模块
- 声明函数
- 整合。
句法 :
sympy.integrate(expression, reference variable)
用于绘图
- 导入模块
- 定义一个函数
- 定义一个变量
- 绘制曲线
- 使用某种条件填充它下面的颜色。
- 显示图
下面给出的是相同的实现。
曲线与标准轴之间的面积
示例 1 :
Python
import matplotlib.pyplot as plt
import numpy as np
import sympy as sy
def f(x):
return x**2
x = sy.Symbol("x")
print(sy.integrate(f(x), (x, 0, 2)))
Python3
import matplotlib.pyplot as plt
import numpy as np
def f(x):
return x**2
x = np.linspace(0, 2, 1000)
plt.plot(x, f(x))
plt.axhline(color="black")
plt.fill_between(x, f(x), where=[(x > 0) and (x < 2) for x in x])
plt.show()
Python3
import matplotlib.pyplot as plt
import numpy as np
import sympy as sy
def f(x):
return x**2
def g(x):
return x**(1/2)
x = sy.Symbol("x")
print(sy.integrate(f(x)-g(x), (x, 0, 2)))
Python3
import matplotlib.pyplot as plt
import numpy as np
def f(x):
return x**2
def g(x):
return x**(1/2)
x = np.linspace(0, 2, 1000)
plt.plot(x, f(x))
plt.plot(x, g(x))
plt.fill_between(x, f(x), g(x), where=[(x > 0) and (x < 2) for x in x])
plt.show()
输出:
8/3
示例 2:
蟒蛇3
import matplotlib.pyplot as plt
import numpy as np
def f(x):
return x**2
x = np.linspace(0, 2, 1000)
plt.plot(x, f(x))
plt.axhline(color="black")
plt.fill_between(x, f(x), where=[(x > 0) and (x < 2) for x in x])
plt.show()
输出:
两条曲线之间的面积
示例 1:
蟒蛇3
import matplotlib.pyplot as plt
import numpy as np
import sympy as sy
def f(x):
return x**2
def g(x):
return x**(1/2)
x = sy.Symbol("x")
print(sy.integrate(f(x)-g(x), (x, 0, 2)))
输出:
0.781048583502540
示例 2:
蟒蛇3
import matplotlib.pyplot as plt
import numpy as np
def f(x):
return x**2
def g(x):
return x**(1/2)
x = np.linspace(0, 2, 1000)
plt.plot(x, f(x))
plt.plot(x, g(x))
plt.fill_between(x, f(x), g(x), where=[(x > 0) and (x < 2) for x in x])
plt.show()
输出: