CSV / TSV / 波形 グラフ・オシロ解析ツール
計測データ(CSV / TSV / 波形テキスト)を読み込み、レポート品質のグラフ作図と
オシロスコープ相当の波形解析を、ひとつの画面で完結できる Windows 向けデスクトップアプリです。
Excel のグラフ編集と、デジタルオシロの測定機能と、簡単なデータサイエンスを足し合わせたような道具です。
想定ユーザー・用途
電子回路・センサ・制御などの計測波形の可視化と評価、実験データの作図とレポート用画像出力、
ログ CSV のざっくり統計・相関分析。プログラミング不要で、ファイルをドラッグ&ドロップして
列を選ぶだけで使えます。
主な機能
読み込み・編集
- CSV / TSV をドラッグ&ドロップで読み込み。文字コード(UTF-8 / Shift_JIS など)と区切り文字を
自動判定(日本語データも文字化けしにくい) - 複数ファイルを重ねて描画。表を直接セル編集して DataFrame に反映、行・列追加、CSV 保存
- 50万点級でも軽快:自動間引き表示+ズーム時の動的再サンプル
グラフ作図(8種)
折れ線 / 棒 / 横棒 / 積み上げ棒 / 散布図 / ヒストグラム / 箱ひげ / 円
Excel 相当の書式編集
- 系列ごとの色・線種・線幅・マーカー(種類+サイズ)
- 近似曲線(線形 / 多項式 / 指数 / 対数 / 移動平均+R²)と、その色も指定可
- 第2軸・複合グラフ、データラベル、エラーバー
- 凡例(位置・文字サイズ・ファイル名/拡張子の表示切替)、軸の単位と倍率換算、
目盛り間隔、枠線/グリッド線の太さ、背景色、画像としての縦横比(16:9 やカスタム比で保存)
オシロスコープ表示・解析
- time/div・V/div・div グリッド、ドラッグでパン/スケール、マウスホイールで拡大縮小(通常グラフでも可)、
カーソル測定(Δt・ΔV・1/Δt) - ピーク検出(第1・第2…)、約43項目の測定(最大/最小/p-p/実効値/立上り立下り時間/デューティ/
オーバーシュート/ジッタ/±σ 内割合 ほか) -
FFT スペクトルと指標(THD / SNR / SINAD / ENOB / SFDR)、スペクトログラム、
占有帯域幅・チャネル電力・高調波
高度解析
- 数学チャンネル:四則演算、積分/微分/絶対値/RC・Butterworth フィルタ/ヒルベルト包絡線/自己相関、
任意数式(安全評価) - マスク試験、アイダイアグラム+アイ測定、ジッタ(TIE)、シリアル解読(UART / I²C / SPI)
データサイエンスタブ
- 線形回帰(傾き・切片・R²・相関・直線性誤差[%FS])、記述統計、相関行列、正規性検定
- 解析タブの測定値やデータサイエンスの結果は、チェックでグラフ上に注記表示できる
出力・設定
- 画像の保存・クリップボードコピー、ファイルごとの一括画像出力(並列処理・PNG/JPG/PDF/SVG)
- 設定は終了時に自動保存・起動時に自動復元
技術構成
- 言語/GUI:Python 3.10+ / PySide6(Qt6)。matplotlib を Qt バックエンドで埋め込み
- 数値・解析:NumPy / pandas / SciPy(SciPy は任意。無くても NumPy フォールバックで起動)
-
設計:本体
GraphAppを機能別の 10 Mixin に分割し、描画(plotter)・解析(analysis)は
薄いファサードで実体モジュールを束ねる構成。GUI から独立した解析ロジックは単体テスト可能 -
品質:オフスクリーン自動テスト+静的解析(未定義名スキャン)+多エージェントによる正しさ監査で、
数値計算の正確さ(周期・FFT 正規化・統計など)まで検証済み
特徴・設計思想
- 計測現場の「測りたい値」を最優先:単なる作図ではなく、オシロが出す測定量をそのまま得られる
-
壊れにくい入力処理:日本語 CSV・欠損・大容量・不正範囲でもクラッシュせず、無効データは
明確なメッセージで案内 - 再現性:別環境(Copilot 等)で再構築するためのファイル別プロンプト集(仕様版・ソース埋め込み版)を同梱
動かし方
-
セットアップ.batを実行(C:\.venvに依存をインストール) -
起動.batを実行、またはpython graph_app.py - 「データ」タブでファイル追加 → X 軸の列と Y 軸(値)を選択 → 「グラフを描画」(F5)