построение графика с помощью matplotlib

Я пытаюсь сделать функцию, которая будет отображать любую формулу, я говорю это.

import numpy as np  
import matplotlib.pyplot as plt  
def graph(formula, x_range):  
    x = np.array(x_range)  
    y = formula  
    plt.plot(x, y)  
    plt.show()  

Когда я пытаюсь вызвать это, возникает следующая ошибка, я верюпытается сделать умножение, прежде чем он доберется до.y = formula

graph(x**3+2*x-4, range(-10, 11))

Traceback (most recent call last):  
  File "", line 1, in   
    graph(x**3+2*x-4, range(-10, 11))  
NameError: name 'x' is not defined  

Ответы на вопрос(3)

Ваш ответ на вопрос