【发布时间】:2021-06-24 06:18:33
【问题描述】:
我有这个代码:
import matplotlib.pyplot as plt
import numpy as np
import math
x = np.linspace(-3,3,100)
y = math.sin(x**2) + 1.1 - ((math.e)**-x)
plt.plot(x,y,label='y = x**2')
plt.title('sin(x^2) + 1.1 - e^-x')
plt.xlabel('x axis')
plt.ylabel('y axis')
plt.grid(alpha=.4,linestyle='--')
plt.show()
我得到这个错误:
TypeError: only size-1 arrays can be converted to Python scalars
谁能帮我找出问题所在?
【问题讨论】:
-
math.sin()不知道如何处理 numpy 数组。使用np.sin(x**2)而不是math -
math.sin()需要一个值,而您正在传递一个矩阵。你可能想使用 np.sin()