Python
 Computer >> コンピューター >  >> プログラミング >> Python

Pythonで角度の三角関数(cos)の値を求める方法

Pythonには標準ライブラリとしてmathモジュールが用意されており、sincosといった三角関数をはじめ、さまざまな数学関数がすべて含まれています。これらの関数はimportするだけで誰でもすぐに利用でき、追加のインストールは一切不要です。

mathモジュールの基本的な使い方

まずmathモジュールをインポートし、角度をラジアンに変換してから関数に渡します。以下は90度と60度のコサイン(余弦)を計算する例です。

import math
angle1 = math.radians(90)
angle2 = math.radians(60)
print(math.cos(angle1))
print(math.cos(angle2))

このコードを実行すると、次のような出力が得られます。

6.123233995736766e-17
0.5

出力結果の解説

最初の値である「6.123233995736766e-17」は、厳密には0ではありませんが、非常に0に近い値です。数学的にはcos(90°)=0となるはずですが、コンピュータは浮動小数点数で計算を行うため、このような微小な誤差が生じます。これは計算精度の限界によるものであり、プログラムのバグではありません。

注意点:角度はラジアンで指定する

mathモジュールの三角関数は、角度をラジアン単位で受け取る仕様になっています。日常的によく使われる「度」のまま渡すと誤った結果になるため、必ずmath.radians()関数で変換してから使用しましょう。逆に、ラジアンから度へ変換したい場合はmath.degrees()関数が使えます。

  1. PythonのMatplotlibで角度スペクトル(位相スペクトル)をプロットする方法

    信号処理において、角度スペクトル(位相スペクトル)は各周波数成分の位相情報を可視化するために用いられます。PythonのMatplotlibでは、phase_spectrum()メソッドを使うことで簡単に描画できます。この記事では、実際のコード例とともにその手順を詳しく解説します。 角度スペクトルをプロットする手順 以下の手順に従って、角度スペクトルを描画することができます。 図のサイズを設定し、サブプロット間および周囲のパディング(余白)を調整します。 乱数のシード値を設定して、再現性のある結果を得られるようにします。 サンプリング間隔 dt を初期化し、そこからサンプリング周波数を算出し

  2. Pythonのscikit-learnを使って画像の輪郭を検出する方法

    scikit-learn(通称:sklearn)は、機械学習アルゴリズムを実装するために使用されるPythonのライブラリです。オープンソースとして公開されているため、無料で利用できます。このライブラリは、NumPy・SciPy・Matplotlibという3つのライブラリを基盤として構築されています。画像から輪郭を抽出する際には、「マーチングスクエア法(marching squares)」と呼ばれる手法が用いられます。具体的には、skimageライブラリのmeasureモジュールに含まれる「find_contours」関数を使用します。この関数では、配列内の値が線形補間されるため、出力画像にお