【发布时间】:2022-01-06 13:42:58
【问题描述】:
我正在尝试编写一个函数来绘制正弦图。该函数采用三个正弦参数:幅度为 A,频率为 B,水平位移为 C(见下文)
A sin(B(x-C))
这是我的代码:
import numpy as np
import matplotlib.pylab as plt
x = np.linspace(-np.pi, np.pi, 201)
def sine(amplitude, frequency, horizontal_shift) -> object:
si = np.sin(x - sine)
si = si * frequency
si = amplitude * si
return si
test = sine(4, 1, 2)
print(test)
plt.plot(x, test)
plt.show()
但是,我不断收到此错误:
TypeError: unsupported operand type(s) for -: 'float' and 'function'
我试过了
- 仅输入整数
- 以字符串形式输入数字
- 将我的函数定义为:
def sine(amplitude, frequency, horizontal_shift) -> object
但我得到了同样的错误。
【问题讨论】:
-
x - sine应该做什么?sine是您刚刚定义的函数。数学不是为函数定义的!
标签: python numpy matplotlib math trigonometry