Resuelva la ecuación lineal y devuelva el gráfico 3D en Python

En este artículo, haremos el gráfico 3D resolviendo las ecuaciones lineales usando Python.

Resolver ecuaciones lineales en Python

Aquí vamos a crear una variable diferente para asignar el valor a una ecuación lineal y luego calcularemos el valor usando los métodos linalg.solve().

Python3

# Python program to solve linear
# equation and return 3-d graph
  
# IMport the libraries
import numpy as np
  
x1, y1, z1, w1 = 1, -2, 3, 9
  
# Take the input for equation-2
x2, y2, z2, w2 = -1, 3, -1, -6
  
# Take the input for equation-3
x3, y3, z3, w3 = 2, -5, 5, 17
  
# Create an array for LHS variables
LHS = np.array([[x1, y1, z1], 
                [x2, y2, z2], 
                [x3, y3, z3]])
  
# Create another array for RHS variables
RHS = np.array([w1, w2, w3])
  
# Apply linear algebra on any numpy
# array created and printing the output
sol = np.linalg.solve(LHS, RHS)
print(sol)

Producción:

[ 1. -1.  2.]

Resuelva la ecuación lineal y devuelva el gráfico 3D

Después de obtener la ecuación lineal, trazaremos el gráfico 3d usando matplotlib. creamos los gráficos 3D usando la función figure(). Además, usamos el módulo de figura del método add_subplot() de la biblioteca matplotlib para agregar ejes a la figura como parte de un arreglo de subtrama.

Python3

import matplotlib.pyplot as plt
from matplotlib import cm
  
# Returns number spaces evenly w.r.t
# interval
x_axis, y_axis = np.linspace(0, 20, 10), 
np.linspace(0, 20, 10)
  
# Create a rectangular grid out of
# two given one-dimensional arrays
X, Y = np.meshgrid(x_axis, y_axis)
  
# Make a rectangular grid
# 3-dimensional by calculating z1, z2, z3
Z1 = (w1-x1*X-y1*Y)/z1
Z2 = (w2-x2*X-y2*Y)/z2
Z3 = (w3+X-Y)/z3
  
# Create 3D graphics and add
# an add an axes to the figure
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
  
# Create a 3D Surface Plot
ax.plot_surface(X, Y, Z1, alpha=1, 
                cmap=cm.Accent, 
                rstride=100, cstride=100)
ax.plot_surface(X, Y, Z2, alpha=1, 
                cmap=cm.Paired, 
                rstride=100, cstride=100)
ax.plot_surface(X, Y, Z3, alpha=1,
                cmap=cm.Pastel1, 
                rstride=100, cstride=100)
  
# Draw points and make lines
ax.plot((sol[0],), (sol[1],), (sol[2],),
        lw=2, c='k', marker='o',
        markersize=7, markeredgecolor='g',
        markerfacecolor='white')
  
# Set the label for x-axis, y-axis and
# z-axis
ax.set_xlabel('X axis')
ax.set_ylabel('Y axis')
ax.set_zlabel('Z axis')
  
# Display all figures
plt.show()

Producción:

 

Publicación traducida automáticamente

Artículo escrito por vin8rai y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *