如何解决Python:如何使用np.arange和函数将弧度转换为度
我正在尝试绘制从0到360度的余弦波。
x = np.arange(0,360,0.1)
y = np.cos(x)
我找不到如何使用arange()命令或它的plot命令进行转换的清晰示例。
保持
x = np.arange(0,360,0.1)
我尝试过:
y = np.cos(np.rad2deg(x))
y = np.cos(x * 180/np.pi)
y = np.cos(np.degrees(x))
和多种变体。这些函数各自绘制出一些混乱且曲折的东西,而不是基本的cos(x)。
解决方法
y = np.cos(np.rad2deg(x)) y = np.cos(x * 180/np.pi) y = np.cos(np.degrees(x))
在所有这三个中,您都将弧度转换为度。您的x已经以度为单位。您需要在应用cos()之前将其转换为弧度。所以:
y = np.cos(np.deg2grad(x))
y = np.cos((x * np.pi)/180)
y = np.cos(np.radians(x))
,
由于您的角度x以度为单位,因此您希望使用np.deg2rad等几种方法之一转换为弧度
所以代码应该是:
x = np.arange(0,360,0.1) # angles in degrees from 0 to 360
y = np.cos(np.deg2rad(x)) # convert x to degrees before
# applying cosine
完整代码(Jupyter笔记本)
%matplotlib inline
import matplotlib.pyplot as plt
plt.style.use('seaborn-whitegrid')
import numpy as np
x = np.arange(0,0.1)
y = np.cos(np.deg2rad(x))
plt.plot(x,y,'o',color='blue')
plt.xlabel('Angle (Degrees)')
plt.ylabel('Cosine')
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。