Numpyには三角関数sin,cos,tan及び逆三角関数arcsin,arccos,arctanの計算を行う関数があります.本記事では使用方法をサンプルプログラムを使って説明しております.
スポンサーリンク
円周率π
円周率πはnumpy.pi関数で定義されています.
・円周率を表示させます.
[IN]
print("pi" ,np.pi )
[OUT]
pi 3.141592653589793
三角関数
三角関数書式
名所 | 関数 |
正弦波 | numpy.sin(x) |
余弦波 | numpy.cos(x) |
接線 | numpy.tan(x) |
・45度をラジアンに変換してsin,cos,tanを計算します.
[IN]
import numpy as np
x=45*np.pi/180 #45°をラジアンに変換
print("sin45°",np.sin(x))
print("cos45°",np.cos(x))
print("tan45°",np.tan(x))
[OUT]
sin45° 0.7071067811865476
cos45° 0.7071067811865476
tan45° 0.9999999999999999
・sin,cosのグラフ作成
Matplotlibを使ってグラフを作成します.予めMatplotlinをインストールする必要があります.
[IN]
import numpy as np
import matplotlib.pylab as plt
fig = plt.figure()
ax1 = fig.add_subplot(111)
x = np.linspace(0, 4*np.pi, 401)
line1=ax1.plot(x, np.sin(x))
line2=ax1.plot(x, np.cos(x))
ax1.set_xlabel('[rad]')
labes=["sin(θ)","cos(θ)"]
ax1.legend(labes)
plt.show()
[OUT]
逆三角関数
・逆三角関数書式
名所 | 関数 |
逆正弦波 | numpy.arcsin(x) |
逆余弦波 | numpy.arccos(x) |
逆接線 | numpy.arctan(x) |
・sin,cos,tanの逆三角関数を使ったプログラム
値が1のsin,cos,tanの逆三角関数を求めラジアンと度数表記で表示します.
[IN]
import numpy as np
ra_sin=np.arcsin(1) #1の逆正弦波
ra_cos=np.arccos(1) #1の逆余弦波
ra_tan=np.arctan(1) #1の逆接線
da_sin=ra_sin*180/np.pi #逆正弦波の結果をラジアンから度へ
da_cos=ra_cos*180/np.pi #逆余弦波の結果をラジアンから度へ
da_tan=ra_tan*180/np.pi #逆接線の結果をラジアンから度へ
print("関数名 ","ラジアン ","度数 ")
print("arcsin(1) ",ra_sin ,da_sin )
print("arccos(1) ",ra_cos ,da_cos )
print("arctan(1) ",ra_tan ,da_tan )
[OUT]
関数名 ラジアン 度数
arcsin(1) 1.5707963267948966 90.0
arccos(1) 0.0 0.0
arctan(1) 0.7853981633974483 45.0
ラジアンから度または度からラジアンへ変換
先程までのサンプルプログラムではラジアンから度数にまたはその逆に数式を使って変換をしていましたが,Numpyの関数式で変換することができます.
・ラジアンから度へ変換
numpy.degrees(x) , numpy.rad2deg(x)
どちらを使っても同じ
・度からラジアンへ変更
numpy.radians(x) , numpy.deg2rad(x)
どちらを使っても同じ
・ラジアン単位での円周率を度数に変換する.
[IN]
import numpy as np
print("πrad→deg " , np.degrees( np.pi ))
print("πrad→deg " , np.rad2deg( np.pi ))
[OUT]
πrad→deg 180.0
πrad→deg 180.0
・180度をラジアン単位に変換する
[IN]
import numpy as np
print("180deg→rad ", np.radians( 180 ))
print("180deg→rad ", np.deg2rad( 180 ))
[OUT]
180deg→rad 3.141592653589793
180deg→rad 3.141592653589793
・Python記事一覧
コメント