利用Matplotlib和numpy绘制方程组

2024-05-12 19:04:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在学习如何使用matplotlib和numpy为我的一个类绘制方程组。我们没有得到太多的指导,我也不太擅长编程,我真的不知道怎么做,虽然我不认为这太复杂。基本上,我有一个这样的方程组:

4x -2y + z =11
-2x +4y -2z = -16
x -2y + 4z = 17

如何使用matplotlib来绘制这些等式中的每一个?在

谢谢!在

编辑:说明书上还说要使用mplot3d。 编辑:解决方案:How to draw planes from a set of linear equations in Python?


Tags: tonumpy编辑matplotlib编程绘制方程组解决方案
1条回答
网友
1楼 · 发布于 2024-05-12 19:04:08

你可以从前两个方程中去掉z,得到x=1和前两个平面的交线{},然后用剩下的方程求解得到点{}。您可以使用numpy.linalg.solve来验证这一点:

In [11]: M = np.array([[4., -2., 1.], [-2., 4., -2.], [1., -2., 4.]])

In [12]: b = np.array([11., -16., 17.])

In [13]: np.linalg.solve(M, b)
Out[13]: array([ 1., -2.,  3.])

在Matplotlib中,可以用plot_surface绘制平面,前两个平面(蓝色)与plot的相交线,以及第三个平面(绿色)与直线相交的点的标记。在

使用alpha=0.5使平面稍微透明,因为平面是平的,因此不需要标记线来平铺曲面(可以将行跨距和列跨距设置为较大的值):

^{pr2}$

enter image description here

相关问题 更多 >