Spectrogram
安定性: 安定
主な用途
Spectrogram は単一の時間周波数マップを表し、GWexpy の解析・描画・変換ヘルパを利用できます。
代表的なシグネチャ
Spectrogram(data, t0=None, dt=None, f0=None, df=None, ...)
Spectrogram.percentile(q, axis="time")
最小例
from gwexpy.spectrogram import Spectrogram
import numpy as np
sgm = Spectrogram(np.random.randn(16, 32), dt=1.0, df=1.0)
med = sgm.percentile(50, axis="time")
関連理論
関連チュートリアル
API リファレンス
詳細な生成済み API はこのページの下部に続きます。
継承元: SpectrogramAnalysisMixin, SpectrogramInteropMixin, SignalAnalysisMixin, PhaseMethodsMixin, RegularityMixin, BaseSpectrogram (gwpy.spectrogram.Spectrogram)
追加の相互運用メソッドを備えた gwpy.spectrogram.Spectrogram の拡張。
物理コンテキスト
Spectrogram は「単一チャネルの時間周波数マップ」を表します。非定常雑音、短時間バースト、線スペクトルのドリフト、制御線の立ち上がり、glitch の周波数進化など、時間と周波数の両方を同時に見たい現象を扱うときの基本クラスです。
二つの軸の意味:
t0/dtは時間ビン、f0/dfは周波数ビンを決めます。1 ピクセルは「ある時間窓での、ある周波数帯の強度」を表します。上流処理への依存:
Spectrogramは通常TimeSeries.spectrogram()、spectrogram2()、q_transform()、hht(..., output="spectrogram")などの結果です。したがって、窓長・オーバーラップ・変換手法により分解能と見え方が変わります。単位の意味: ピクセル値はパワー、ASD 相当、正規化強度、位相量などになり得ます。まず「色が何を表しているか」を固定してから読む必要があります。
解析上の注意点
時間分解能と周波数分解能のトレードオフ
スペクトログラムは便利ですが、すべてを同時に高分解能で見られるわけではありません。
短い窓では時間局在は良くなるが、周波数分解能は粗くなる
長い窓では細い線を見やすくなるが、短いトランジェントはにじむ
Q 変換や HHT では、このトレードオフの現れ方が STFT と異なる
色の強さをそのまま物理振幅だと思わない
可視化では対数圧縮、正規化、percentile clipping が入ることがあります。見た目の明るさだけで「信号が強い」「エネルギーが保存されている」と判断してはいけません。
plot(norm="log")や dB 表示の有無を確認する比較図では colormap と color scale を揃える
percentile ベースの背景推定をした場合は、元の絶対量と区別する
よくある誤読
ピクセル幅を物理イベント継続時間そのものとみなす
別設定の spectrogram を同じ色スケールだと思って比較する
周波数ドリフトを手法由来の smear と区別せずに解釈する
percentile や bootstrap の統計出力を生データの瞬時強度と混同する
どのページへ進むか
上流の時間領域入口: TimeSeries
時間周波数手法の比較: 時間-周波数解析: 手法比較ガイド
インタラクティブ比較: 時間-周波数解析: インタラクティブ比較
glitch の実例: グリッチ詳細解析
HHT との比較: HHT: 解析
Pickle / shelve の可搬性
warning
信頼できないデータを pickle / shelve で読み込まないでください。ロード時に任意コード実行が起こり得ます。
gwexpy の pickle は可搬性を優先しており、unpickle 時に GWpy 型を返す設計です (読み込み側に gwexpy が無くても、gwpy があれば復元できます)。
主要プロパティ
プロパティ |
説明 |
|---|---|
|
時間間隔 |
|
開始時刻 |
|
時間配列 |
|
周波数間隔 |
|
開始周波数 |
|
周波数配列 |
|
データチャンネル |
|
データセット名 |
|
物理単位 |
スペクトル解析
メソッド |
説明 |
|---|---|
|
パーセンタイル計算 |
|
ブートストラップ ASD 推定 |
|
時間/周波数リビン |
|
補間 |
位相解析
メソッド |
説明 |
|---|---|
|
位相計算 |
|
phase() のエイリアス |
|
位相(度)、単位 ‘deg’ を設定 |
|
位相(ラジアン)、単位 ‘rad’ を設定 |
|
位相アンラップ |
統計
メソッド |
説明 |
|---|---|
|
統計量 |
|
絶対値 |
データ操作
メソッド |
説明 |
|---|---|
|
時間範囲でクロップ |
|
周波数範囲でクロップ |
相互運用性
メソッド |
説明 |
|---|---|
|
pandas 変換 |
|
周波数ビンごとに TimeSeriesList へ変換 |
|
時刻ビンごとに FrequencySeriesList へ変換 |
|
ML フレームワーク変換 |
|
xarray 変換 |
入出力
メソッド |
説明 |
|---|---|
|
ファイル入出力 |
可視化
メソッド |
説明 |
|---|---|
|
スペクトログラムプロット |