Fix Chinese font rendering in all chart outputs

- Add src/font_config.py: centralized font detection that auto-selects
  from Noto Sans SC > Hiragino Sans GB > STHeiti > Arial Unicode MS
- Replace hardcoded font lists in all 18 modules with unified config
- Add .gitignore for __pycache__, .DS_Store, venv, etc.
- Regenerate all 70 charts with correct Chinese rendering

Previously, 7 modules (fft, wavelet, acf, fractal, hurst, indicators,
patterns) had no Chinese font config at all, causing □□□ rendering.
The remaining 11 modules used a hardcoded fallback list that didn't
prioritize the best available system font.

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-02-03 11:21:01 +08:00
parent f4c4408708
commit 704cc2267d
92 changed files with 1029 additions and 36 deletions

View File

@@ -584,9 +584,8 @@ def run_volatility_analysis(df: pd.DataFrame, output_dir: str = "output/volatili
daily_returns = log_returns(df['close'])
print(f"日对数收益率样本数: {len(daily_returns)}")
# 设置中文字体(兼容多系统)
plt.rcParams['font.sans-serif'] = ['Arial Unicode MS', 'SimHei', 'DejaVu Sans']
plt.rcParams['axes.unicode_minus'] = False
from src.font_config import configure_chinese_font
configure_chinese_font()
# 固定随机种子以保证杠杆效应散点图采样可复现
np.random.seed(42)