【发布时间】:2020-03-03 22:41:17
【问题描述】:
我正在努力绘制这个函数,所以基本上我必须为我的第一个函数创建一个 x 向量和 f 向量,绘制它,然后创建一个范德蒙德矩阵。我正在努力处理这段代码的第一部分。
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-6,6,10) #test interval
def main():
Vt = Vandermonde(x)
print(Vt)
def f1(x):
f1 = 1/((x)**2+1)
return f1
print(type(f1),f1.shape)
print(f1)
plt.plot(x,f1)
plt.show()
【问题讨论】:
-
您定义了一个
f1函数,但我没有看到您运行它。不要为函数和变量使用相同的名称(即使 Python 允许,它也会让你感到困惑)。 -
嘿,当我运行它时,我收到一条错误消息“ValueError:x 和 y 必须具有相同的第一维,但具有形状 (10,) 和 (1,)”
-
你明白我的评论了吗?您没有计算
y;f1仍然是函数,而不是函数产生的数组! -
那么我如何把这个函数变成一个数组并让它和我的 x 有相同的维度呢?抱歉,我对编程有点陌生
标签: arrays numpy matplotlib matrix plot