我试图用python和Jupyter笔记本绘制一个Taylor级数sin(x)图。我创建了一个简短的函数。图形在y2
之前将正确显示,但它将在y3
失败。在y3
中绘制一个值为x = 2.7
的图是很困难的。我不知道如何修复y3
。在
这是我的代码:
import numpy as np
import matplotlib.pyplot as plt
import numpy as np
def f(x) :
result = x - x**3/6 + x**5/120
return result
x = np.linspace(0.0, 7.0, 100)
y = np.sin(x)
y2 = x - x**3/6 + x**5/120
y3 = f(2.7)
plt.title("taylor sin graph")
plt.xlim(0, 7+0.2)
plt.ylim(-5, 5+1)
plt.plot(x, y, label='sin(x)')
plt.plot(x, y2, label='x=0')
plt.plot(x, y3, label='x=2.7')
plt.legend()
plt.show()
我想在这里添加y3
:
你必须添加点,而不是x轴上的数组和y轴上的标量。在
我想
会有用的。当x是一个linspace而y3只是一个数字时,不能绘制(x,y3)。在
同时,sin函数的Taylor逼近仅在区间(-pi,pi)下有效。在
在你的评论之后,你澄清了你不需要一个点,而是一条水平线。在这种情况下,您只需输入一个具有相同值
2.7
的x-mesh。在为此,首先使用
np.ones(100) * 2.7
定义一个包含值2.7
的数组,然后将其传递给函数。在要在
x=2.7
绘制一个单点,有两种方法(在其他可能的方法中)。在第一个选项只需指定两个x-y数字,并使用标记作为
^{pr2}$第二个选项是使用
plt.scatter
。s=60
只是为了有一个大标记。在相关问题 更多 >
编程相关推荐