グラフィカルユーザーインターフェース(GUI、試作版)
概要
ステータス: 試作版(ソース / 開発環境専用)
GWexpy のソースツリーには PyQt5 ベースの GUI が含まれており、対話的なデータ探索と可視化が可能です。ただし現時点では、GUI は 試作段階 / 実験的インターフェースとして扱ってください。再現性やサポートの観点では、Python API が引き続き主要インターフェースです。
GUI アプリと gwexpy.gui package は 初回 PyPI 配布物には含めません。初回 PyPI リリースは Python ライブラリ API を主対象とし、GUI の安定化は post-release 作業として別に扱います。
インストール
ソース checkout または開発用途では、ローカル clone から GWexpy を入れたうえで GUI 依存関係を明示的にインストールします:
git clone https://github.com/tatsuki-washimi/gwexpy.git
cd gwexpy
pip install -e .
pip install PyQt5 pyqtgraph qtpy sounddevice
これにより、以下の追加の依存パッケージがインストールされます:
PyQt5- GUI フレームワークpyqtgraph/qtpy- インタラクティブ表示と Qt 抽象化sounddevice- 音声系 GUI 機能
GUI を起動する
ソース checkout または開発インストールで GUI 依存関係を入れた後は、モジュールを直接起動します:
python -m gwexpy.gui
初回 PyPI リリースでは gwexpy.gui console script も gwexpy.gui package も配布しません。
プログラム内での起動
from gwexpy.gui.pyaggui import MainWindow
import sys
from PyQt5 import QtWidgets
app = QtWidgets.QApplication(sys.argv)
window = MainWindow()
window.show()
sys.exit(app.exec_())
対応ファイル形式
GUI は以下の形式でのデータ読み込みに対応しています:
GBD (GRAPHTEC バイナリ)
HDF5 (HDF5 ベースの時系列)
FITS (Flexible Image Transport System)
MiniSEED (地震波データ)
テキスト/CSV (カンマまたはスペース区切り)
ファイルを開く方法:
File → Open またはキーボードの
Ctrl+Oを押すファイルシステムからデータファイルを選択する
データが読み込まれ、メインプロット領域に表示されます
主な機能
データ可視化
インタラクティブな時系列プロット
スペクトログラムの生成
周波数領域解析
マルチチャンネル対応
データ検査
メタデータの表示(サンプリングレート、単位、期間)
ズームとパンコントロール
カーソル位置インジケータ
エクスポート
図を画像として保存(PNG、PDF など)
処理済みデータをエクスポート
既知の制限事項
GUI はまだ試作段階の機能であり、挙動・対応ワークフロー・画面構成は今後変更される可能性があります。コア Python API と同等の互換性保証は想定していません。
GUI は単一ファイルの解析に最適化されています。バッチ処理には Python API の使用をお勧めします。
メモリ使用量はファイルサイズとともに増加します。大規模なデータセットについては、API のストリーミングオプションの使用を検討してください。
一部の高度な解析機能(マッチドフィルタリング、機械学習パイプラインなど)は GUI では利用できません。これらのワークフローについては、Python API を使用してください。
トラブルシューティング
“ModuleNotFoundError: No module named ‘PyQt5’”
ソース checkout または開発環境で GUI 依存関係がインストールされていることを確認してください:
pip install PyQt5 pyqtgraph qtpy sounddevice
GUI が起動しない
システムにディスプレイがあることを確認してください(Linux の X11、macOS/Windows はネイティブ):
export DISPLAY=:0 # Linux/WSL(必要な場合)
python -m gwexpy.gui
ファイルが読み込めない
ファイルが存在し、対応形式であることを確認してください。コンソール出力でエラーメッセージを確認してください:
python -m gwexpy.gui 2>&1 | head -20
参照
Python API ドキュメント - プログラミングによるデータ解析の方法
チュートリアル - GWexpy の学習用対話的な例