yodas-ja000-WADA-SNR-filtering / generate_graph.py
ayousanz's picture
feat: analysis yodas ja000 for WADA SNR
c113ea5
raw
history blame
882 Bytes
import json
import numpy as np
import matplotlib.pyplot as plt
# 結果のJSONファイルを読み込む
with open('audio_analysis_results.json', 'r') as f:
results = json.load(f)
# SNR値のリストを取得
snr_values = [result['SNR値'] for result in results]
# ヒストグラムのパラメータを設定
bins = np.linspace(-20, 100, 121) # -20dBから60dBまで1dB刻みのビン
plt.figure(figsize=(10, 6))
plt.hist(snr_values, bins=bins, edgecolor='black', linewidth=1.2)
plt.xlabel('WADA-SNR (dB)')
plt.ylabel('Number of Samples')
plt.title('Audio Quality Histogram')
plt.xlim(-20, 100)
plt.ylim(0, plt.ylim()[1] * 1.1) # y軸の上限を10%拡張
plt.grid(True)
plt.tight_layout()
# PNGファイルとして保存
plt.savefig('audio_quality_histogram.png', dpi=300)
print("ヒストグラムが audio_quality_histogram.png として保存されました。")