スプレッドシートで角度から正弦(サイン)を求めたいとき、計算方法がわからず困っていませんか?
三角関数は数学のイメージが強くて、スプレッドシートでどう書けばいいか迷いますよね。
そんなときに使うのがSIN関数です。=SIN(角度) と書くだけで、指定した角度の正弦(サイン)を返してくれます。
この記事では基本の書き方から、RADIANS関数との組み合わせ、座標計算や波形データ生成への活用まで紹介します。
スプレッドシートのSIN関数とは?
SIN関数(読み方: サイン関数)は、角度の正弦(サイン)を返す関数です。語源はラテン語の「sinus(湾曲・入り江)」に由来します。
たとえば =SIN(RADIANS(30)) と入力すると「0.5」が返ります。30度の正弦がそのまま取得できるわけですね。
SIN関数はラジアン単位の角度を引数に取ります。度数法(30度、45度など)を使いたい場合は、RADIANS関数で変換してから渡します。
SIN関数にできることをまとめると、次のとおりです。
- 角度のラジアン値から正弦(サイン)を返す
- RADIANS関数と組み合わせて度数法の角度を使う
- 座標計算やグラフ描画に活用する
- 波形データやシミュレーションに使う
NOTE
SIN関数はGoogleスプレッドシートの全バージョンで使えます。Excelとも完全に互換性があるので、ファイルのやり取りでも安心です。
SIN関数の書き方(構文と引数)
基本構文
=SIN(角度)
カッコの中にラジアン単位の角度を指定します。
引数の説明
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| 角度 | 必須 | 正弦を求めたい角度をラジアン単位で指定する |
引数は1つだけです。ラジアン単位で指定する点がポイントですね。
度数法の角度(30度、90度など)を使いたい場合は、次のどちらかで変換します。
=SIN(RADIANS(30)) ← RADIANS関数で変換
=SIN(30*PI()/180) ← PI関数を使って手計算
どちらも同じ結果(0.5)を返します。式がシンプルなRADIANS関数がおすすめですよ。
TIP
「ラジアン」とは角度の単位の一つです。360度 = 2π ラジアンの関係があります。詳しくはPI関数の記事の「度数法からラジアンに変換する」セクションをご覧ください。
SIN関数の基本的な使い方
ラジアンで角度を指定する
まずはラジアン値をそのまま渡すパターンです。
=SIN(0)
結果は「0」です。0ラジアン(0度)の正弦は0ですね。
代表的なラジアン値とSINの結果をまとめます。
| 数式 | 角度 | 結果 |
|---|---|---|
| =SIN(0) | 0度 | 0 |
| =SIN(PI()/6) | 30度 | 0.5 |
| =SIN(PI()/4) | 45度 | 0.7071… |
| =SIN(PI()/2) | 90度 | 1 |
| =SIN(PI()) | 180度 | 1.22E-16(ほぼ0) |
180度のSINは数学的には0ですが、コンピュータの浮動小数点演算では「1.22E-16」のようなごく小さい値が出ます。実質ゼロなので問題ありません。
RADIANS関数と組み合わせて度数法で指定する
実務では度数法で角度を扱うことがほとんどです。RADIANS関数と組み合わせれば、度数法のまま使えます。
=SIN(RADIANS(30))
結果は「0.5」です。30度のサインがそのまま求まりますね。
よく使う角度の早見表を用意しました。
| 角度 | 数式 | 結果 |
|---|---|---|
| 0度 | =SIN(RADIANS(0)) | 0 |
| 30度 | =SIN(RADIANS(30)) | 0.5 |
| 45度 | =SIN(RADIANS(45)) | 0.7071… |
| 60度 | =SIN(RADIANS(60)) | 0.8660… |
| 90度 | =SIN(RADIANS(90)) | 1 |
| 180度 | =SIN(RADIANS(180)) | 0(微小誤差あり) |
| 270度 | =SIN(RADIANS(270)) | -1 |
| 360度 | =SIN(RADIANS(360)) | 0(微小誤差あり) |
角度をセルに入れておけば、ドラッグでまとめて計算することもできます。
A列に角度を入力して、B1セルに次の式を入れてみてください。
=SIN(RADIANS(A1))
あとはB1をコピーして下方向に貼り付ければ、各角度の正弦を一括で求められます。
実務でのSIN関数活用例
座標計算に使う
SIN関数とCOS関数を組み合わせると、円周上の座標を計算できます。
たとえば半径100の円周上で、角度θの点の座標は次の式で求まります。
- X座標:
=100*COS(RADIANS(A2)) - Y座標:
=100*SIN(RADIANS(A2))
A2セルに角度(度数法)が入っている想定です。
具体的な値を見てみましょう。
| 角度(A列) | X座標 | Y座標 |
|---|---|---|
| 0度 | 100 | 0 |
| 30度 | 86.60 | 50.00 |
| 45度 | 70.71 | 70.71 |
| 90度 | 0 | 100 |
| 180度 | -100 | 0 |
この計算は、図形の配置や方位計算で役立ちます。
波形データを生成する
SIN関数を使えば、サイン波(正弦波)のデータを簡単に作れます。
波形データの生成手順を紹介しますね。
手順1: A列に連番(0, 1, 2, … 360)を入力します。SEQUENCE関数を使うと一発です。
=SEQUENCE(361, 1, 0, 1)
A1セルに入力すると、A1からA361まで0~360の連番が並びます。
手順2: B1セルに次の式を入力します。
=SIN(RADIANS(A1))
手順3: B1セルをB361までコピーします。
これで0度から360度までのサイン波データが完成です。B列を選択してグラフを挿入すれば、きれいなサイン波が表示されますよ。
TIP
周波数を変えたい場合は
=SIN(RADIANS(A12))のように角度を倍にします。振幅を変えるなら=3SIN(RADIANS(A1))のように係数を掛けてください。
よくあるエラーと対処法
SIN関数でよくあるトラブルをまとめます。
| 症状 | 原因 | 対処法 |
|---|---|---|
| #VALUE! エラー | 引数に文字列を渡した | 数値またはセル参照を指定する |
| 期待と違う値が返る | 度数法をそのまま渡している | RADIANS関数で変換してから渡す |
| 結果がほぼ0なのに0にならない | 浮動小数点の誤差 | ROUND関数で丸める |
度数法をそのまま渡すミスに注意
SIN関数でもっとも多いミスは、度数法の角度をそのまま渡してしまうことです。
=SIN(90)
この数式は「90ラジアン」の正弦を計算します。結果は「0.8939…」で、90度のサイン(1)とは全く違う値です。
度数法で指定したい場合は、必ずRADIANS関数で変換しましょう。
=SIN(RADIANS(90))
こちらなら結果は「1」になります。
浮動小数点の誤差を丸める
SIN(RADIANS(180)) は数学的には0ですが、実際には「1.22E-16」のような微小な値が返ります。
見た目を整えたい場合は、ROUND関数で丸めてください。
=ROUND(SIN(RADIANS(180)), 10)
結果は「0」になります。小数点以下10桁で丸めれば、実用上は問題ありません。
似た関数との違い・使い分け
| 関数 | 動作 | 引数 | 用途 |
|---|---|---|---|
| SIN | 正弦(サイン)を返す | 角度(ラジアン) | 三角関数の基本 |
| COS | 余弦(コサイン)を返す | 角度(ラジアン) | X座標の計算 |
| TAN | 正接(タンジェント)を返す | 角度(ラジアン) | 勾配・傾きの計算 |
| ASIN | 逆正弦(アークサイン)を返す | -1~1の値 | サイン値から角度を逆算 |
| RADIANS | 度数法をラジアンに変換する | 度数法の角度 | SIN/COS/TANの引数準備 |
| PI | 円周率πを返す | なし | 角度変換・円の計算 |
SIN・COS・TANの関係
三角関数の3つの基本は、互いに密接な関係があります。
SIN(θ)² + COS(θ)² = 1
TAN(θ) = SIN(θ) / COS(θ)
たとえば45度のとき、SIN(RADIANS(45)) と COS(RADIANS(45)) はどちらも「0.7071…」です。この2つを二乗して足すと1になります。
3つの関数はどれも引数にラジアン値を取ります。度数法で使いたい場合はRADIANS関数で変換する点も共通です。
ASIN関数との関係
ASIN関数はSIN関数の逆関数です。SINが「角度→サイン値」を返すのに対して、ASINは「サイン値→角度(ラジアン)」を返します。
=SIN(RADIANS(30)) → 0.5
=DEGREES(ASIN(0.5)) → 30
サイン値から角度を逆算したいときにASIN関数を使います。
まとめ
SIN関数は、ラジアン単位の角度から正弦(サイン)を返す関数です。
ポイントを整理します。
- 構文は
=SIN(角度)で、引数はラジアン単位 - 度数法の角度を使うなら
=SIN(RADIANS(度))と変換する - SIN(RADIANS(30))=0.5、SIN(RADIANS(90))=1 が代表的な値
- COS・TAN関数と組み合わせれば座標計算もできる
- 度数法をそのまま渡すミスに注意。必ずRADIANS関数で変換する
まずは =SIN(RADIANS(30)) で0.5が返ることを確認してみてください。
