2025-07-10 15:07:31 +08:00
|
|
|
|
{
|
|
|
|
|
|
"cells": [
|
|
|
|
|
|
{
|
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
|
"id": "initial_id",
|
|
|
|
|
|
"metadata": {
|
2025-07-15 22:45:51 +08:00
|
|
|
|
"collapsed": true,
|
2025-07-10 15:07:31 +08:00
|
|
|
|
"ExecuteTime": {
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"end_time": "2025-07-27T15:05:25.038912Z",
|
|
|
|
|
|
"start_time": "2025-07-27T15:05:25.015981Z"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
}
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"source": [
|
|
|
|
|
|
"from datetime import datetime\n",
|
|
|
|
|
|
"%load_ext autoreload\n",
|
|
|
|
|
|
"%autoreload 2\n"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
|
|
|
|
|
"outputs": [
|
|
|
|
|
|
{
|
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
|
"output_type": "stream",
|
|
|
|
|
|
"text": [
|
|
|
|
|
|
"The autoreload extension is already loaded. To reload it, use:\n",
|
|
|
|
|
|
" %reload_ext autoreload\n"
|
|
|
|
|
|
]
|
|
|
|
|
|
}
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"execution_count": 27
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"cell_type": "code",
|
|
|
|
|
|
"id": "a559dfcf",
|
|
|
|
|
|
"metadata": {
|
|
|
|
|
|
"ExecuteTime": {
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"end_time": "2025-07-27T15:05:29.570430Z",
|
|
|
|
|
|
"start_time": "2025-07-27T15:05:25.049811Z"
|
2025-07-10 15:07:31 +08:00
|
|
|
|
}
|
|
|
|
|
|
},
|
2025-07-15 22:45:51 +08:00
|
|
|
|
"source": [
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"from turtle import down\n",
|
|
|
|
|
|
"from src.analysis.result_analyzer import ResultAnalyzer\n",
|
|
|
|
|
|
"# 导入所有必要的模块\n",
|
|
|
|
|
|
"from src.data_manager import DataManager\n",
|
|
|
|
|
|
"from src.backtest_engine import BacktestEngine\n",
|
|
|
|
|
|
"from src.indicators.indicator_list import INDICATOR_LIST\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"from src.indicators.indicators import RSI, BollingerBandwidth, HistoricalRange, NormalizedATR, RateOfChange, \\\n",
|
|
|
|
|
|
" StochasticOscillator, ADX\n",
|
|
|
|
|
|
"from src.strategies.OpenTwoFactorStrategy import SimpleLimitBuyStrategyLong, SimpleLimitBuyStrategyShort, \\\n",
|
|
|
|
|
|
" SimpleLimitBuyStrategy\n",
|
2025-07-15 22:45:51 +08:00
|
|
|
|
"\n",
|
|
|
|
|
|
"# --- 配置参数 ---\n",
|
|
|
|
|
|
"# 获取当前脚本所在目录,假设数据文件在项目根目录下的 data 文件夹内\n",
|
|
|
|
|
|
"# data_file_path = '/mnt/d/PyProject/NewQuant/data/data/SHFE_rb2510/SHFE_rb2510_min60.csv'\n",
|
|
|
|
|
|
"# data_file_path = \"/mnt/d/PyProject/NewQuant/data/data/KQ_m@CZCE_MA/KQ_m@CZCE_MA_min60.csv\"\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"data_file_path = \"/mnt/d/PyProject/NewQuant/data/data/KQ_m@DCE_c/KQ_m@DCE_c_min60.csv\"\n",
|
|
|
|
|
|
"# data_file_path = \"/mnt/d/PyProject/NewQuant/data/data/KQ_m@CZCE_SA/KQ_m@CZCE_SA_min60.csv\"\n",
|
2025-07-15 22:45:51 +08:00
|
|
|
|
"\n",
|
|
|
|
|
|
"initial_capital = 100000.0\n",
|
|
|
|
|
|
"slippage_rate = 0.000 # 假设每笔交易0.1%的滑点\n",
|
|
|
|
|
|
"commission_rate = 0.0001 # 假设每笔交易0.02%的佣金\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"global_config = {\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
" 'symbol': 'KQ_m@DCE_c',\n",
|
2025-07-15 22:45:51 +08:00
|
|
|
|
"}\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"# Short 可用\n",
|
|
|
|
|
|
"strategy_parameters = {\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
" 'main_symbol': \"SH\", # 根据您的数据文件中的品种名称调整\n",
|
2025-07-15 22:45:51 +08:00
|
|
|
|
" 'trade_volume': 1,\n",
|
|
|
|
|
|
" 'lag': 7,\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
" # 'lag': 1,\n",
|
|
|
|
|
|
" 'range_factor': 1.7, # 示例值,需要通过网格搜索优化\n",
|
|
|
|
|
|
" 'profit_factor': 2.4, # 示例值\n",
|
|
|
|
|
|
" # 'range_factor': 2.0, # 示例值,需要通过网格搜索优化\n",
|
|
|
|
|
|
" # 'profit_factor': 0.6, # 示例值\n",
|
|
|
|
|
|
" # 'range_factor_l': 1.6, # 示例值,需要通过网格搜索优化\n",
|
|
|
|
|
|
" # 'profit_factor_l': 2.9, # 示例值\n",
|
|
|
|
|
|
" # 'range_factor_s': 2.0, # 示例值,需要通过网格搜索优化\n",
|
|
|
|
|
|
" # 'profit_factor_s': 0.6, # 示例值\n",
|
|
|
|
|
|
" 'max_position': 20,\n",
|
2025-07-15 22:45:51 +08:00
|
|
|
|
" 'enable_log': False,\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
" 'stop_loss_points': 10,\n",
|
2025-07-15 22:45:51 +08:00
|
|
|
|
" 'use_indicator': True,\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
" 'indicator': NormalizedATR(window=21, down_bound=0.8, up_bound=1.3),\n",
|
|
|
|
|
|
" # 'indicator': RSI(window=7, down_bound=25, up_bound=60),\n",
|
|
|
|
|
|
" # 'indicator_l': RSI(window=7, down_bound=25, up_bound=65),\n",
|
|
|
|
|
|
" # 'indicator_s': RSI(window=7, down_bound=25, up_bound=60),\n",
|
|
|
|
|
|
" # 'lag_l': 7,\n",
|
|
|
|
|
|
" # 'lag_s': 1,\n",
|
2025-07-15 22:45:51 +08:00
|
|
|
|
"}\n",
|
|
|
|
|
|
"start_time = datetime(2021, 1, 1)\n",
|
|
|
|
|
|
"end_time = datetime(2024, 6, 1)\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"start_time = datetime(2024, 6, 1)\n",
|
|
|
|
|
|
"end_time = datetime(2025, 6, 1)\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"# --- 1. 初始化数据管理器 ---\n",
|
|
|
|
|
|
"print(\"初始化数据管理器...\")\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"data_manager = DataManager(file_path=data_file_path, symbol=global_config['symbol'], start_time=start_time,\n",
|
|
|
|
|
|
" end_time=end_time)\n",
|
2025-07-15 22:45:51 +08:00
|
|
|
|
"# 确保 DataManager 能够重置以进行多次回测\n",
|
|
|
|
|
|
"# data_manager.reset() # 首次运行不需要重置\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"# --- 2. 初始化回测引擎并运行 ---\n",
|
|
|
|
|
|
"print(\"\\n初始化回测引擎...\")\n",
|
|
|
|
|
|
"engine = BacktestEngine(\n",
|
|
|
|
|
|
" data_manager=data_manager,\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
" strategy_class=SimpleLimitBuyStrategyLong,\n",
|
2025-07-15 22:45:51 +08:00
|
|
|
|
" # current_segment_symbol=strategy_parameters['symbol'],\n",
|
|
|
|
|
|
" strategy_params=strategy_parameters,\n",
|
|
|
|
|
|
" initial_capital=initial_capital,\n",
|
|
|
|
|
|
" slippage_rate=slippage_rate,\n",
|
|
|
|
|
|
" commission_rate=commission_rate,\n",
|
|
|
|
|
|
" roll_over_mode=True,\n",
|
|
|
|
|
|
" start_time=start_time,\n",
|
|
|
|
|
|
" end_time=end_time,\n",
|
|
|
|
|
|
" indicators=INDICATOR_LIST\n",
|
|
|
|
|
|
")\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"print(\"\\n开始运行回测...\")\n",
|
|
|
|
|
|
"engine.run_backtest()\n",
|
|
|
|
|
|
"print(\"\\n回测运行完毕。\")\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"# --- 3. 获取回测结果 ---\n",
|
|
|
|
|
|
"results = engine.get_backtest_results()\n",
|
|
|
|
|
|
"portfolio_snapshots = results[\"portfolio_snapshots\"]\n",
|
|
|
|
|
|
"trade_history = results[\"trade_history\"]\n",
|
|
|
|
|
|
"initial_capital_result = results[\"initial_capital\"]\n",
|
|
|
|
|
|
"bars = results[\"all_bars\"]\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"# --- 4. 结果分析与可视化 ---\n",
|
|
|
|
|
|
"if portfolio_snapshots:\n",
|
|
|
|
|
|
" analyzer = ResultAnalyzer(portfolio_snapshots, trade_history, bars, initial_capital_result, INDICATOR_LIST)\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
" analyzer.generate_report()\n",
|
|
|
|
|
|
" analyzer.plot_performance()\n",
|
|
|
|
|
|
" metrics = analyzer.calculate_all_metrics()\n",
|
|
|
|
|
|
" print(metrics)\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
" analyzer.analyze_indicators()\n",
|
|
|
|
|
|
"else:\n",
|
|
|
|
|
|
" print(\"\\n没有生成投资组合快照,无法进行结果分析。\")\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"# --- 4. 结果分析与可视化 (待实现) ---\n",
|
|
|
|
|
|
"# if portfolio_snapshots:\n",
|
|
|
|
|
|
"# analyzer = ResultAnalyzer(portfolio_snapshots, trade_history, initial_capital_result)\n",
|
|
|
|
|
|
"# metrics = analyzer.calculate_all_metrics()\n",
|
|
|
|
|
|
"# print(\"\\n--- 绩效指标 ---\")\n",
|
|
|
|
|
|
"# for key, value in metrics.items():\n",
|
|
|
|
|
|
"# print(f\" {key}: {value:.4f}\")\n",
|
|
|
|
|
|
"#\n",
|
|
|
|
|
|
"# print(\"\\n--- 绘制绩效图表 ---\")\n",
|
|
|
|
|
|
"# analyzer.plot_performance()\n",
|
|
|
|
|
|
"# else:\n",
|
|
|
|
|
|
"# print(\"\\n没有生成投资组合快照,无法进行结果分析。\")\n",
|
|
|
|
|
|
"\n"
|
|
|
|
|
|
],
|
2025-07-10 15:07:31 +08:00
|
|
|
|
"outputs": [
|
|
|
|
|
|
{
|
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
|
"output_type": "stream",
|
|
|
|
|
|
"text": [
|
|
|
|
|
|
"初始化数据管理器...\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"数据加载成功: /mnt/d/PyProject/NewQuant/data/data/KQ_m@DCE_i/KQ_m@DCE_i_min60.csv\n",
|
|
|
|
|
|
"数据范围从 2020-12-31 14:00:00 到 2025-07-22 13:00:00\n",
|
|
|
|
|
|
"总计 7650 条记录。\n",
|
2025-07-10 15:07:31 +08:00
|
|
|
|
"\n",
|
|
|
|
|
|
"初始化回测引擎...\n",
|
|
|
|
|
|
"模拟器初始化:初始资金=100000.00, 滑点率=0.0, 佣金率=0.0001\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"--- 回测引擎初始化完成 ---\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
" 策略: SimpleLimitBuyStrategyLong\n",
|
2025-07-10 15:07:31 +08:00
|
|
|
|
" 初始资金: 100000.00\n",
|
|
|
|
|
|
" 换月模式: 启用\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"开始运行回测...\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"--- 回测开始 ---\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"SimpleLimitBuyStrategyLong 策略初始化回调被调用。\n",
|
2025-07-10 15:07:31 +08:00
|
|
|
|
"开始将 DataFrame 转换为 Bar 对象流...\n",
|
|
|
|
|
|
"Bar 对象流生成完毕。\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"--- 回测结束,检查并平仓所有剩余持仓 ---\n",
|
|
|
|
|
|
"--- 回测结束 ---\n",
|
|
|
|
|
|
"总计处理了 1671 根K线。\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"总计发生了 32 笔交易。\n",
|
|
|
|
|
|
"最终总净值: 99951.55\n",
|
|
|
|
|
|
"总收益率: -0.05%\n",
|
2025-07-10 15:07:31 +08:00
|
|
|
|
"\n",
|
|
|
|
|
|
"回测运行完毕。\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"--- 结果分析器初始化完成 ---\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"--- 交易明细 ---\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
" 2024-06-13 09:00:00 | BUY | DCE.i2409 | Vol: 1 | Price: 798.00 | Comm: 0.08\n",
|
|
|
|
|
|
" 2024-06-13 11:00:00 | CLOSE_LONG | DCE.i2409 | Vol: 1 | Price: 811.00 | Comm: 0.08 | PnL: 13.00\n",
|
|
|
|
|
|
" 2024-06-18 14:00:00 | BUY | DCE.i2409 | Vol: 1 | Price: 823.00 | Comm: 0.08\n",
|
|
|
|
|
|
" 2024-06-21 21:00:00 | CLOSE_LONG | DCE.i2409 | Vol: 1 | Price: 807.00 | Comm: 0.08 | PnL: -16.00\n",
|
|
|
|
|
|
" 2024-07-08 13:00:00 | BUY | DCE.i2409 | Vol: 1 | Price: 824.00 | Comm: 0.08\n",
|
|
|
|
|
|
" 2024-07-11 13:00:00 | CLOSE_LONG | DCE.i2409 | Vol: 1 | Price: 836.50 | Comm: 0.08 | PnL: 12.50\n",
|
|
|
|
|
|
" 2024-07-16 14:00:00 | BUY | DCE.i2409 | Vol: 1 | Price: 825.00 | Comm: 0.08\n",
|
|
|
|
|
|
" 2024-07-17 21:00:00 | CLOSE_LONG | DCE.i2409 | Vol: 1 | Price: 805.00 | Comm: 0.08 | PnL: -20.00\n",
|
|
|
|
|
|
" 2024-07-23 14:00:00 | BUY | DCE.i2409 | Vol: 1 | Price: 774.00 | Comm: 0.08\n",
|
|
|
|
|
|
" 2024-07-30 13:00:00 | CLOSE_LONG | DCE.i2409 | Vol: 1 | Price: 762.50 | Comm: 0.08 | PnL: -11.50\n",
|
|
|
|
|
|
" 2024-08-22 13:00:00 | BUY | DCE.i2501 | Vol: 1 | Price: 733.00 | Comm: 0.07\n",
|
|
|
|
|
|
" 2024-08-23 21:00:00 | CLOSE_LONG | DCE.i2501 | Vol: 1 | Price: 719.50 | Comm: 0.07 | PnL: -13.50\n",
|
|
|
|
|
|
" 2024-09-02 09:00:00 | BUY | DCE.i2501 | Vol: 1 | Price: 735.00 | Comm: 0.07\n",
|
|
|
|
|
|
" 2024-09-02 21:00:00 | CLOSE_LONG | DCE.i2501 | Vol: 1 | Price: 721.50 | Comm: 0.07 | PnL: -13.50\n",
|
|
|
|
|
|
" 2024-09-03 11:00:00 | BUY | DCE.i2501 | Vol: 1 | Price: 706.00 | Comm: 0.07\n",
|
|
|
|
|
|
" 2024-09-03 22:00:00 | CLOSE_LONG | DCE.i2501 | Vol: 1 | Price: 693.00 | Comm: 0.07 | PnL: -13.00\n",
|
|
|
|
|
|
" 2024-09-18 09:00:00 | BUY | DCE.i2501 | Vol: 1 | Price: 685.00 | Comm: 0.07\n",
|
|
|
|
|
|
" 2024-09-18 13:00:00 | CLOSE_LONG | DCE.i2501 | Vol: 1 | Price: 673.00 | Comm: 0.07 | PnL: -12.00\n",
|
|
|
|
|
|
" 2024-11-08 22:00:00 | BUY | DCE.i2501 | Vol: 1 | Price: 762.00 | Comm: 0.08\n",
|
|
|
|
|
|
" 2024-11-15 09:00:00 | CLOSE_LONG | DCE.i2501 | Vol: 1 | Price: 750.50 | Comm: 0.08 | PnL: -11.50\n",
|
|
|
|
|
|
" 2024-11-15 14:00:00 | BUY | DCE.i2501 | Vol: 1 | Price: 737.00 | Comm: 0.07\n",
|
|
|
|
|
|
" 2024-11-18 10:00:00 | CLOSE_LONG | DCE.i2501 | Vol: 1 | Price: 753.00 | Comm: 0.08 | PnL: 16.00\n",
|
|
|
|
|
|
" 2024-11-27 11:00:00 | BUY | DCE.i2501 | Vol: 1 | Price: 786.00 | Comm: 0.08\n",
|
|
|
|
|
|
" 2024-11-29 11:00:00 | CLOSE_LONG | DCE.i2501 | Vol: 1 | Price: 798.00 | Comm: 0.08 | PnL: 12.00\n",
|
|
|
|
|
|
" 2024-12-09 11:00:00 | BUY | DCE.i2501 | Vol: 1 | Price: 802.00 | Comm: 0.08\n",
|
|
|
|
|
|
" 2024-12-09 21:00:00 | CLOSE_LONG | DCE.i2501 | Vol: 1 | Price: 821.00 | Comm: 0.08 | PnL: 19.00\n",
|
|
|
|
|
|
" 2024-12-18 11:00:00 | BUY | DCE.i2505 | Vol: 1 | Price: 784.00 | Comm: 0.08\n",
|
|
|
|
|
|
" 2024-12-19 10:00:00 | CLOSE_LONG | DCE.i2505 | Vol: 1 | Price: 770.50 | Comm: 0.08 | PnL: -13.50\n",
|
|
|
|
|
|
" 2025-02-14 21:00:00 | BUY | DCE.i2505 | Vol: 1 | Price: 798.00 | Comm: 0.08\n",
|
|
|
|
|
|
" 2025-02-18 21:00:00 | CLOSE_LONG | DCE.i2505 | Vol: 1 | Price: 817.00 | Comm: 0.08 | PnL: 19.00\n",
|
|
|
|
|
|
" 2025-05-08 13:00:00 | BUY | DCE.i2509 | Vol: 1 | Price: 693.00 | Comm: 0.07\n",
|
|
|
|
|
|
" 2025-05-12 10:00:00 | CLOSE_LONG | DCE.i2509 | Vol: 1 | Price: 703.00 | Comm: 0.07 | PnL: 10.00\n",
|
2025-07-10 15:07:31 +08:00
|
|
|
|
"正在计算绩效指标...\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"total_return: -0.0004845070000000229, annualized_return:-0.0003382401569803628, 252 / total_days:0.6980609418282548\n",
|
2025-07-10 15:07:31 +08:00
|
|
|
|
"绩效指标计算完成。\n",
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"--- 回测绩效报告 ---\n",
|
|
|
|
|
|
"初始资金 : 100000.00\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"最终资金 : 99951.55\n",
|
|
|
|
|
|
"总收益率 : -0.05%\n",
|
|
|
|
|
|
"年化收益率 : -0.03%\n",
|
|
|
|
|
|
"最大回撤 : 0.21%\n",
|
|
|
|
|
|
"夏普比率 : -0.16\n",
|
|
|
|
|
|
"卡玛比率 : -0.16\n",
|
|
|
|
|
|
"总交易次数 : 32\n",
|
|
|
|
|
|
"总实现盈亏 : -23.00\n",
|
|
|
|
|
|
"交易成本 : 2.45\n",
|
2025-07-10 15:07:31 +08:00
|
|
|
|
"\n",
|
|
|
|
|
|
"--- 交易详情 ---\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"盈利交易次数 : 7\n",
|
|
|
|
|
|
"亏损交易次数 : 9\n",
|
|
|
|
|
|
"胜率 : 43.75%\n",
|
|
|
|
|
|
"盈亏比 : 1.05\n",
|
|
|
|
|
|
"平均每次盈利 : 14.50\n",
|
|
|
|
|
|
"平均每次亏损 : -13.83\n",
|
2025-07-10 15:07:31 +08:00
|
|
|
|
"正在绘制绩效图表...\n"
|
|
|
|
|
|
]
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1400x1000 with 2 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABWUAAAPdCAYAAADiWgoIAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd8U/X+x/F3mg5ayhBKQZYC2oJsRJEll+XAwbo4Eed1gvO6r4p6FS7iRq/3/hwo7isigqCi4kAQREAEGQKiILPMlq40Ob8/jiejTUfatDlJX8/Ho4+kyUnON8nJeudzPl+HYRiGAAAAAAAAAAA1Ii7SAwAAAAAAAACA2oRQFgAAAAAAAABqEKEsAAAAAAAAANQgQlkAAAAAAAAAqEGEsgAAAAAAAABQgwhlAQAAAAAAAKAGEcoCAAAAAAAAQA0ilAUAAAAAAACAGkQoCwAAAAAAAAA1iFAWABAzBg0apMzMzIC/Tp066S9/+YtuvvlmLV++PNJDLGHTpk26/vrr1bt3b3Xo0EGZmZl69tlnK31927dvV2ZmpgYNGlTiPOv+2b59e1WGXCHBHotgf++//361j6Usd911ly3GYUeVuW/ef//9oM/BXr16adiwYbrtttv0zjvvKCcnpxpHHnllPQ9j3bfffqu7775bp59+unr06KFOnTqpX79+uvzyyzV9+nTt378/0kOMqFdffVWZmZn65JNPylzulVde8T6HZsyYUeayS5cuVWZmpi655JIS51nXUVmbN2/WpEmTNGLECPXq1UsdO3ZUr169dP755+vxxx/X5s2bK33dqLrly5crMzNTU6ZMifRQAACVEB/pAQAAEG49evTQMcccI0k6fPiw1qxZo/nz5+vjjz/WnXfeqcsvv7zax/D+++/r7rvv1siRIzV58uSgy+Tm5urqq6/WH3/84Q0unE6nOnToUO3jqyn+j0UwrVu3rsHRVFxFHj+ULiUlRaeffrokyePxKDs7W9u3b9e8efM0d+5cTZ48WbfccosuueQSORyOCI8W4bB//37ddtttWrx4sSSpRYsW6tWrl1JSUrR3716tXLlSixcv1tNPP63p06era9euER5xzdu/f7+mTZumzp07e58fpXnvvfe8x2fOnBk0cK1ORUVFmjJlimbMmCGPx6OGDRuqU6dOatiwobKzs7V27VqtWrVKL774ou69916NHTu2RsdnibbX6meffVbTpk3T+PHjNWHChCpfX8+ePfWXv/xFr732ms477zwde+yxVR8kAKDGEMoCAGLOmDFjNGrUKO//BQUFuv/++/XBBx/oscce01/+8he1adMmgiM0/fTTT/rjjz/UvXt3vf3229W+vunTp8vlcqlp06bVvi5L8cfCbm699Vb97W9/U3p6eqSHElOOOuqooAHJnj179OKLL+q1117TI488ol27dumOO+6IwAgRTtnZ2brooov066+/qm3btnr44YfVs2fPgGUKCws1a9YsPfvss9q7d2+ERhpZ06ZN0+HDh8sN41atWqVNmzapfv36Kioq0rp167R27Vp17NixhkYq3X777Zo3b55SU1N17733avjw4XI6nd7zDcPQt99+qyeeeEK//fZbjY0LJU2YMEFffvmlpk6dqmnTpkV6OACAENC+AAAQ85KSknT//fcrJSVFbrdbCxYsiPSQJEk7d+6UpBqrbGndurXatWunhISEGllfNEhPT1e7du1Ur169SA+lVkhPT9c999yj++67T5L00ksv2bKtCELz8MMP69dff1WLFi301ltvlQhkJSkxMVHnn3++PvjgA7Vt2zYCo4ysw4cPa9asWWratKn69+9f5rJWlexZZ52lM844I+C0mvDee+9p3rx5SkhI0Msvv6xRo0YFBLKS5HA41K9fP73zzjsaNmxYjY0NJXXq1Ent27fX559/XiPtiQAA4UMoCwCoFerWreutji3+peWbb77RNddco969e3vbCNx888366aefgl7XJZdcoszMTC1dulTLly/Xtddeq1NOOUXt27fX+++/r0GDBunuu++WJM2aNSugv+Yll1zi7f935513Bl3G38GDB/XEE0/orLPOUteuXdW9e3eNGjVK//d//6f8/PyQ7oOyesrm5eXpv//9r0aOHKnu3bura9euOuuss/Tkk0/q0KFDIa2nqjZt2qQbb7xRvXr1UpcuXXT22WfrpZdektvtLvU2lNc30f8x8xesb2p5j5/H49HgwYOVmZmplStXlrrOiRMnhtTrLycnR++++67Gjx+v0047Td26dVO3bt10zjnn6Mknn9Thw4eDXs7/Pvnuu+90xRVX6KSTTlKXLl00cuRIffDBB6Wu8+DBg3rkkUc0cOBAb//lhx56SAcPHqzQmCvr4osvVufOnSVJL774YsB5Vl/au+66yzu+IUOGqFOnTgG7cC9evFgPP/ywhg8frl69eqlTp0469dRTdfPNN2v16tUl1vnaa68pMzNT//znP0uc97e//U2ZmZnq27evDMMIOO+DDz5QZmZm0IrehQsXauzYserevbtOPPFEXXTRRfrss8/Kvf2bN2/W3Xff7b3fTz75ZF166aWaN29etY7bv/eoy+XSf//7X5111lnq0qWLevXqpfHjx4fcI3Tbtm2aO3euJOnuu+9Ww4YNy1w+LS0tIJQtr3ex//ZQ2unBtpNvvvlGmZmZOvPMM0sdS1FRkfr27avMzEytX78+4Lz8/Hy9/PLLOu+889SzZ09vy4EpU6bowIEDZd7G0m5Hbm6uhg8frri40r+C5ebmereDv/71rxo9erQkae7cuSooKAh5vaEyDEMvvPCCJOmCCy4ot81EQkKCunfvXuL01atX66abblK/fv3UqVMn9e7dW9dee62+/fbboNfjvx1s27ZNt99+u/r27atOnTppyJAhevLJJ1VYWBhwmfJeqy3lvWdLlX/9lczt6L333tNll10W8Fp02WWXBfQDzszM9FayTps2LWC8/tv3nj179M9//lOnn366OnfurK5du2rAgAG69NJL9dJLLwUdw8iRI+XxePTWW2+VOk4AgP3QvgAAUGtYkwslJiZ6T3vqqaf073//Ww6HQ927d1fz5s21efNmzZ8/X59++qkeeugh/fWvfw16fR9//LHefvtttW3bVn369NGhQ4eUmJio008/XatWrdKKFSvUunVrnXjiid7LtG3bVmlpaRo5cqR+++23oMtYtm3bpksvvVR//PGHGjVqpAEDBsjlcmnp0qWaOnWq5s+fr1deeUUNGjSo0v1y8OBBXXbZZVq3bp1SU1N1yimnKCEhQcuWLdMLL7yguXPn6tVXX1XLli2rtJ6KWL58uf72t78pNzdXrVq1Ut++fXXgwAE9+eST+vHHH6t9/ZLKffzi4uI0duxYTZ48Wa+//nrQQCInJ0ezZ89WXFycLrroogqtd/369brvvvvUqFEjtWnTRh07dvT2RH7hhRc0f/58vfPOOzrqqKOCXn7mzJn697//rRNOOEH9+/fXH3/8oVWrVunOO+/0Psb+srKydPHFF2vr1q1q0KCBBg4cKI/Hozlz5uibb77RcccdV/E7rRLOPfdc/fTTT1q6dKmKiooUHx/4sfTAgQMaPXq0srOzdeKJJ6pjx44BVd4PPPCAdu7cqeOPP149evRQfHy8tmzZovnz52vBggV64oknAvp29unTR5K8PU8tLpfLW62blZWlDRs2qH379t7zreWty1umT5+uSZMmSZK6dOmi1q1ba+vWrbrhhhvK7Fv95Zdf6sYbb1RBQYHatGmj0047Tfv27dP333+v7777TosWLdKjjz5abeO2Lnv11Vdr5cqV6tmzp9q1a6fVq1drwYIFWrp0qWbNmlXh5/vChQvldrtVv379iExsVtp20rdvXzVr1kxbtmzRqlWr1K1btxKX/frrr5WVlaWOHTsG3He7d+/WVVddpY0bN6phw4bq3Lmz6tatq59//lkvvfSSPv74Y82YMUMtWrSo8DitsD7Y4+Fv3rx5OnLkiHeSPMncm2Lr1q369NNPdc4551R4nZWxYcMGbdu2TZIZ9FXGu+++qwceeEAej0cnnHCCevX
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1400x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABW0AAAKyCAYAAACuWPzHAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3XecE3X6B/DPTOr2vvQmsIt0EEHECmLDAjb0FCxn43eWs3tYzt5ObGAvKIodseOdICIq0nvvvWxh+2ZTZn5/JDOZSSa7yW42m939vF+vO5Op32QnYfLMM88jyLIsg4iIiIiIiIiIiIjigtjUAyAiIiIiIiIiIiIiPwZtiYiIiIiIiIiIiOIIg7ZEREREREREREREcYRBWyIiIiIiIiIiIqI4wqAtERERERERERERURxh0JaIiIiIiIiIiIgojjBoS0RERERERERERBRHGLQlIiIiIiIiIiIiiiMM2hIRERERERERERHFEQZtiYioVdm3bx/y8/ORn5+Pffv21brsyJEjkZ+fj6+++iomY5s6dSry8/MxderUmOwv2vtU3tuRI0dGYWSxM336dPWY+PDDD5t6OE3q4MGDePHFF3HZZZfhhBNOQJ8+fTBkyBCMGzcOTzzxBNasWRO0jvLetRQTJkxQX5Pyv759++Kkk07CzTffjF9++aVe222Kz3d9PPXUU+jVqxfWrl0bcpnt27fj6aefxtixYzFs2DD06dMHw4YNw/jx4zFlyhRs3749hiOm5qw+3x9Gn9H8/HwMGDAA55xzDh5//HEcOHCgkUYcHXv37kXfvn1x++23N/VQiIgojjFoS0RERK3al19+qT6eNWtWE46kfr766ivk5+fj/vvvb9B23n77bYwePRpvvPEGtm7dil69euHss8/GkCFDUFpaig8//BCXXnopnnvuuSiNPL716tUL48aNw7hx4zBy5EjY7XbMnz8fkyZNwhNPPNHUw2sU27dvx8yZM3HmmWeiX79+QfPdbjeeeuopnHfeeXj//fdx8OBB9O3bF2effTYGDBiAffv24a233sJ5552Hjz76qAleQWw1l0B8XaL1HRJr2s/o2LFjMWTIEBQWFuKjjz7C+eefb3iRKV506tQJl112GX766ScsWbKkqYdDRERxytzUAyAiIqKWoU2bNvjxxx9hsViaeihhW7VqFbZt24bU1FS43W5s3LgR69evR58+fZp6aDH1/PPP4+2334bFYsF9992Hq666ClarVbfMqlWr8OKLL2LXrl1NM8gYO+OMM3DrrbeqzyVJwksvvYQ333wTH374IUaNGoXhw4eHvb0rr7wS5557LjIyMhpjuFHx3HPPwe1261631j333IMff/wRycnJeOCBB3DhhRfCZDKp82VZxh9//IEXXngBu3fvjtWwqZUK/IwCQHl5OW6++WYsW7YMjzzySMzulKmPSZMm4fPPP8fTTz+N2bNnN/VwiIgoDjHTloiIiKLCYrGge/fu6Ny5c1MPJWxKlu2YMWNw9tln66a1FosWLcLbb78NAHjxxRdx3XXXBQVsAWDgwIF4//33cd1118V6iHFBFEXcfvvt6NSpEwBgzpw5Ea2fmZmJ7t27IzMzszGG12A7d+7EggULMHDgQPTs2TNo/pdffqlelHnvvfdw0UUX6QK2ACAIAk466SR89tlnOPfcc2M1dCJVSkoK/vGPfwAA1q9fj/Ly8iYeUWg5OTk45ZRTsGHDBixdurSph0NERHGImbZEREQRmjBhApYsWYIZM2YgNTUVr776KpYuXYrKykp07twZl1xyCa699loIghC0rsPhwNtvv43vvvsOBw4cQHp6OkaMGBFWXbt169Zh+vTpWL58OQoLC5GYmIh+/fph4sSJOPXUU4OWHzlyJPbv34958+Zh06ZNmDFjBjZt2oTS0lLMmDEDw4YNM9zPK6+8gldffRXjx4/HY489ZrjMmjVrcOmllyI3Nxfz58+H2WzGvn37MGrUKHTo0CGo7qdSs3Dz5s3473//i/fffx+bN2+GJEno1asXJk2aZPgaAGD//v2YOnUqFi5ciLKyMrRr1w7nnXcebrrpJlx//fXq3yLU6wmlqqoKP/74IwDgkksugcPhwFdffYXvv/8e999/P2w2m+F6c+bMwWeffYaNGzeioqICycnJyMrKwuDBg3HVVVehV69e6rLl5eV455138Msvv2Dv3r1wu91IT09Hx44dMXz4cPzf//1fUGZyaWkpPvjgA8ybNw979uyBJEno3LkzzjnnHFx77bVISEhQl1X+xgAwe/ZsXbbW0KFDw6rR+9prr6nbGj16dK3LCoKAIUOG1LlNRUlJCd577z3MmzcP+/btgyiK6NatG8455xxMmDABdrs9aJ0///wTM2bMwJo1a1BaWorExERkZGSgf//+GD9+PI4//vigdRYtWoSZM2di1apVKCkpQUpKCgYPHozrr78egwYNCnu8dTGZTDj22GOxd+9e9X0HwvusTZ06FdOmTcMtt9ximMm6c+dOfPDBB1i0aBEOHToEk8mEtm3bYujQofjb3/6GvLw83fKRHCfhmDlzJmRZxrhx44LmybKMN954AwBw+eWXY8CAAbVuy2KxGL7va9aswbvvvovly5erf6cBAwZgwoQJGDFiRNDy999/P2bPno2nn34axx9/PF555RX8+eefKC0tRdu2bTFmzBj84x//MLzIAHi/Mz/88EMsXboUBQUFSEhIQNu2bTFixAhcddVV6NChg7rs//73PyxYsACrV6/G4cOH4XA4kJOTg2HDhuGGG27AMccco9u2tg7rtGnTMG3aNPX5uHHj8Mwzz6jP3W43Zs+ejW+//RabN29GVVUVcnNzcfLJJ+Pmm29Gu3btdNtevHgxJk6ciKFDh+K9997D9OnT8c0332Dv3r1ISEjA8ccfjzvuuAPdu3cPes1//vkn5s2bh2XLluHQoUOorKxEZmYmBg8ejOuuuw79+/fXLR/pd8hPP/2EL774AuvXr0dFRQUyMjIwbNgw3HzzzejRo4fh32HlypV49dVXsWrVKng8HnTr1g1/+9vfcMkllxgu31DZ2dnqY7fbrZtXXFyM77//HgsXLsT27dtRWFgIs9mMrl274uyzz8bVV19t+N2v/Tds1qxZ+Pzzz7Ft2zZUVFRg3rx56NixY72+7y+66CLMmzcPM2fONPxuIyKi1o1BWyIionr6/fffMX36dHTu3BkjRoxAQUEBli9fjmeffRYHDx7EAw88oFu+uroa11xzDVatWoXExEScdNJJsNls+P333/Hrr7/itNNOC7mvDz74AM888wwkScKxxx6L/v37o7CwEIsXL8bvv/+OW2+9FbfccovhutOnT8dHH32Evn374uSTT8aRI0eCMuS0rrjiCrz11lv47rvvcPfddyM1NTVomZkzZwIAxo8fD7M5/NOJV155Ba+99hoGDRqEU089FTt27MDKlStx0003YerUqUFBw23btuGqq67C0aNHkZubi1GjRqG6uhrTp0/HX3/9BUmSwt53oB9//BGVlZVqoykA6Nq1K3bt2oX//e9/OP/884PWmTZtGqZOnQqz2YxBgwahTZs2KC8vx8GDB/Hll1+iR48eatC2uroaf/vb37BlyxZkZmbihBNOQGJiIgoKCrBz50689tpruPbaa3U/4rdt24brr78eBw8eRE5ODo477jiYzWasXbsWL7/8Mv73v//hww8/REpKCgDgrLPOwqpVq7BixQp07twZxx13nLqtwCCTkbKyMixbtgwADIN1DbF3715cffXV2L9/PzIzM3HqqafC5XJh8eLFeP755zFnzhxMnz4daWlp6jqzZ8/Gv/71LwBA//79MWzYMDgcDhw+fBg//vgjMjIyggIbzz77LN577z2Iooi+ffviuOOOw8GDBzFv3jzMnz8fjz/+OC6++OKova6KigoAMAwURvpZU3z33XeYPHkynE4n2rdvj1NPPRWSJGHv3r349NNPkZWVpQvaRnqchGPevHkAgBNPPDFo3ubNm7F3714A9T9OPv/8c/z73/+GJEno3bs3hg0bhv3792P+/PmYP39+rd9hGzduxJNPPom
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
|
"output_type": "stream",
|
|
|
|
|
|
"text": [
|
|
|
|
|
|
"图表绘制完成。\n",
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"{'初始资金': 100000.0, '最终资金': np.float64(99951.5493), '总收益率': np.float64(-0.0004845070000000229), '年化收益率': np.float64(-0.0003382401569803628), '最大回撤': np.float64(0.0020920435317431244), '夏普比率': np.float64(-0.16272313482970105), '卡玛比率': np.float64(-0.16167931108896938), '总交易次数': 32, '交易成本': 2.4507000000000003, '总实现盈亏': -23.0, '胜率': 0.4375, '盈亏比': 1.0481927710843373, '盈利交易次数': 7, '亏损交易次数': 9, '平均每次盈利': 14.5, '平均每次亏损': -13.833333333333334, 'initial_capital': 100000.0, 'final_capital': np.float64(99951.5493), 'total_return': np.float64(-0.0004845070000000229), 'annualized_return': np.float64(-0.0003382401569803628), 'max_drawdown': np.float64(0.0020920435317431244), 'sharpe_ratio': np.float64(-0.16272313482970105), 'calmar_ratio': np.float64(-0.16167931108896938), 'total_trades': 32, 'transaction_costs': 2.4507000000000003, 'total_realized_pnl': -23.0, 'win_rate': 0.4375, 'profit_loss_ratio': 1.0481927710843373, 'winning_trades_count': 7, 'losing_trades_count': 9, 'avg_profit_per_trade': 14.5, 'avg_loss_per_trade': -13.833333333333334}\n"
|
2025-07-10 15:07:31 +08:00
|
|
|
|
]
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA9IVJREFUeJzs3XeYE1XbBvB70pNtbKH3XqQqgjRBilRFEFAQFOkqIALSRBEVBBREigKiAlIUxYYCiqgIFixYeP1QQKlSl122ps7M90d2ZjdsS3aTTbJ7/67LyyE5mTkzk01mnjznOYIsyzKIiIiIiIiIiIhKkCbYHSAiIiIiIiIiorKHQSkiIiIiIiIiIipxDEoREREREREREVGJY1CKiIiIiIiIiIhKHINSRERERERERERU4hiUIiIiIiIiIiKiEsegFBERERERERERlTgGpYiIiIiIiIiIqMQxKEVERERERERERCWOQSkiIiLK04gRIzBixIhgd6NYSsM+lCWHDh1Cw4YNcejQIb+ut2HDhli5cqVf1xnqrn/vnzt3Dg0bNsT7779fov2YNWsWunbtWqLbJCKi8MGgFBEREfnNrFmz0LBhw1z/9erVq8DXff7552jYsCHefffdfNt8++23aNiwITZt2uTvbpcqdrsdGzZswODBg3HTTTehWbNm6NmzJ5555hmcPHky2N0LmP3794dc4On6v4Mbb7wRw4cPx9dffx3sroWcESNGeByrNm3a4O6778Z7770HSZJ8Xt/777+Phg0b4siRIwHoLRER+Ysu2B0gIiKi0PT6668X6XUGgwHPPfecx2NRUVEFvqZLly6IiorCzp07MXjw4DzbfPLJJ9Bqtejbt2+R+lUWJCUlYcyYMfjzzz9x2223oV+/frBYLDh58iR27dqF7du343//+1+wuxkQ+/fvx5YtWzBp0qRcz/3xxx/QarVB6BXQoUMH9O/fH7Is4/z589i2bRsmTJiA1157DZ06dSqxflStWhV//PEHdLrQvfyvVKkSpk6dCgBITk7Ghx9+iCeeeAKnTp3C9OnTg9w7IiIKhND9ViIiIiK/y8zMhMVi8aqtwWAo0jZ0Oh369+/v02sMBgN69uyJ999/H5cuXULFihU9nrfb7di7dy/at2+P+Pj4IvWrLJg9ezaOHj2KFStWoGfPnh7PTZkyBS+99FKQehZcRqMxaNuuVauWx99Dz5490adPH2zatKlEg1KCIAT1OHgjKirK41jdc8896NWrF7Zs2YJHH30Uer0+iL0jIqJA4PA9IiKiUmrlypVo2LAhTpw4gWnTpuHmm2/GsGHDAABXrlzB7Nmzceutt6Jp06bo2LEjHnroIZw7d059fXHqMYmiiPT0dJ9ec+edd0KSJOzatSvXc19//TXS0tJwxx13AAB27NiB+++/H+3atUPTpk3Rp08fbN26tdBtKEN6cu4nkH8to99//x2jR4/GTTfdhBYtWmD48OH45ZdfCtxGYmIimjRpglWrVuV67t9//0XDhg2xefNmAIDT6cSqVatw++23o1mzZmjbti2GDh2Kb7/9ttB9ud7vv/+Or7/+GoMGDcoVkALcgb+ZM2eq/87v/F5fA0ipRfT6669jy5Yt6NatG1q0aIFRo0bhwoULkGUZq1evxq233ormzZvjoYcewrVr1zzWmV9Np65du2LWrFkF7tfPP/+MyZMno0uXLmjatCk6d+6MhQsXwmazefR5y5Yt6raU//La/p49e9CwYUP8+OOPubb19ttvo2HDhjh27Jj62D///IPJkyejTZs2aNasGQYOHIh9+/YV2OeC1K1bF7GxsThz5ozH4w6HAytWrECPHj3U/VyyZAkcDodHu6K+96+vKaW85/P67/oaUPv378ewYcPQsmVLtGrVCuPGjcPx48dzbeOLL75Av3790KxZM/Tr1w979+719fB4MJvNaNGiBTIzM5GUlATAfS6feeYZdVtNmzZF37598c033xRrW0REFBzMlCIiIirlHn30UdSsWROPPfYYZFkGAEyaNAknTpzA8OHDUbVqVSQlJeHbb7/FhQsXUK1atWJtz2q14qabboLVakVMTAz69u2L6dOnIyIiosDX3XzzzahUqRJ27tyJBx980OO5Tz75BGazGd27dwcAbNu2DfXr10fXrl2h0+nw1VdfYf78+ZBlGffdd1+x+q/4/vvvMXbsWDRt2hQTJ06EIAh4//338cADD2Dr1q1o3rx5nq9LSEjAzTffjN27d2PixIkez+3atQtarVatsbVq1SqsXbsWgwcPRvPmzZGeno7//e9/+PPPP9GhQwef+vvll18CgM9Zat7auXMnnE4nRowYgWvXrmH9+vWYMmUKbrnlFhw6dAhjx47F6dOnsXnzZixevBjPP/+8X7a7Z88e2Gw2DB06FOXKlcMff/yBzZs34+LFi1ixYgUAd0bN5cuX8e2332LJkiUFrq9Lly6wWCzYvXs32rRp4/Hcrl27UL9+fTRo0AAAcPz4cQwdOhQVK1bE2LFj1dc98sgjWLlyJXr06OHz/qSlpSE1NRU1atRQH5MkCQ899BB++eUXDBkyBHXr1sWxY8ewceNGnDp1Cq+88ora1l/v/bp16+Y6VmlpaVi0aBHi4uLUxz788EPMmjULHTt2xPTp02G1WrFt2zYMGzYMH3zwgfp5cfDgQUyaNAn16tXDtGnTkJycjNmzZ6NSpUo+H6Oczp07B61Wi+joaPWxX375BZ9//jmGDRuGiIgIvPXWW5g8eTK++uorxMbGFmt7RERUshiUIiIiKuUaNWqEpUuXqv9OTU3Fr7/+ihkzZmD06NHq4+PHjy/2tsqXL48xY8agSZMmkGUZBw4cwNatW/HXX3/hrbfeKrCejUajQd++ffH666/j5MmTqF27NgAgPT0d+/fvR48ePdTA1ubNm2EymdTXDh8+HKNHj8abb77pl6CULMt4+umn0bZtW6xfvx6CIAAA7r33XvTt2xfLly/HG2+8ke/r+/Tpg6eeegrHjh1TAxwAsHv3btx8881ISEgA4M4A69y5M5599tli9/mff/4BAI/t+dOlS5fw+eefq/XBJEnC2rVrYbPZsGPHDvXcJicnY+fOnZg/f36Rh4DmNH36dI9zfc8996BmzZpYtmwZzp8/jypVqqBVq1aoVasWvv3220KDciaTCV27dsVnn32GuXPnqrWmrly5gp9++skjkLhgwQJUrlwZO3bsUPdl2LBhGDp0KF588UWvglJ2u13N8jl//jyWL18OURQ9stl27tyJ7777Dm+99RZat26tPl6/fn3MmzcPhw8fxo033gjAf+/9hIQEj2MlyzIeeugh6PV6LFq0CACQkZGBBQsWYPDgwR7v0QEDBqBXr15Yu3at+viLL76I+Ph4bN26VX2PtGnTBqNGjULVqlW96pMoiuqxSk5OxrZt29T6aGazWW33zz//YNeuXWpgr23btujfvz8+/fRTDB8+3OtjQEREwcfhe0RERKXcvffe6/Fvk8kEvV6PH3/8ESkpKX7d1rRp0zB9+nT06dMHffv2xaJFi/DYY4/h8OHD+Oyzzwp9/Z133gnAnRml+Oyzz2C329Whe8o+KNLS0pCUlIQ2bdrg7NmzSEtLK/Z+HD16FKdOncIdd9yB5ORkJCUlISkpCZmZmWjXrh1++umnAmcE69GjB3Q6ncdQxGPHjuHEiRPo06eP+lh0dDSOHz+OU6dOFbvPynDJwjLSiqpXr14eBeuVTLE777zTI9jYvHlzOJ1OXLp0yS/bzXmulWFcrVq1gizL+L//+78irbN37964evWqxxC+zz77DJIkqefn2rVr+OGHH9C7d2+kp6er74Hk5GR07NgRp06d8mof33vvPbRr1w7t2rXD3XffjR9++AFjxozxyAbcs2cP6tatizp16qjbSUpKwi233AIAHsNKA/XeX716Nb766issWrQI9erVAwB89913SE1NRd++fT36pdFo0KJFC7Vfly9fxtGjRzFgwACP90iHDh3UdXnj33//VY9Vnz59sHnzZnTp0gULFy70aNe+fXuPTLNGjRohMjISZ8+eLfL+ExFRcDBTioiIqJS
|
|
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
|
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA+IZJREFUeJzs3XeUE2UXBvBn0jdb2AaL9A4qRRRBmiiCNCuCBQGliCBFBKWJAhYEFKSqICogIIKdLgIi8iGCqGBBEVg6S1vYljaZ+f7Izuwu27K76Xl+53BOSN7MvMlOksnNvfcVZFmWQURERERERERE5EMaf0+AiIiIiIiIiIjCD4NSRERERERERETkcwxKERERERERERGRzzEoRUREREREREREPsegFBERERERERER+RyDUkRERERERERE5HMMShERERERERERkc8xKEVERERERERERD7HoBQREREREREREfkcg1JERERUoD59+qBPnz7+nkaZhMJjCCd79uxB/fr1sWfPHo9ut379+pg3b55Htxnorj32T506hfr16+OLL77w6TzGjRuH9u3b+3SfREQUPBiUIiIiIo+pX79+of/69etX6P2+/fZb1K9fH2vWrCl0zK5du1C/fn0sW7bMG1MPGTabDUuWLEHPnj1xyy23oFGjRujUqRNeeeUVHDt2zN/T85odO3YEXODp2tfAzTffjN69e+P777/399QCTp8+ffI8V82bN8dDDz2Ezz77DJIklXh7X3zxBerXr4+DBw96YbZEROQpOn9PgIiIiALTBx98UOL7zJgxI991f/zxB5YtW4bWrVsXer877rgD0dHRWLt2LXr27FngmHXr1kGr1aJbt24lnle4uHz5MgYOHIg///wTd955J+655x6YzWYcO3YMGzZswOrVq/HHH3/4e5pesWPHDqxYsQLDhw/Pd9uBAweg1Wr9MCugdevWuP/++yHLMs6cOYNPPvkEgwcPxvvvv4+2bdv6bB6VK1fGgQMHoNMF7ul/xYoVMWrUKABAamoqvvrqK7z44otITk7G888/7+fZERGRNwTupxIRERF5XFZWFsxms1tjDQZDibd///3357vu559/hiAIuOeee4rcV6dOnfDFF18gJSUFSUlJeW632WzYsmULWrVqhYSEhBLPK1yMHz8ef//9N+bOnYtOnTrluW3kyJF4++23/TQz/zIajX7bd40aNfK8Ljp16oSuXbti2bJlPg1KCYLg1+fBHdHR0Xmeq0ceeQSdO3fGihUr8Oyzz0Kv1/txdkRE5A0s3yMiIgpR8+bNQ/369fHff/9h9OjRuPXWW9GrVy8AwIULFzB+/HjcfvvtaNiwIdq0aYMhQ4bg1KlT6v090Y/Jbrfj22+/xa233oqKFSsWOfa+++6DJEnYsGFDvtu+//57pKen49577wUAfP755+jbty9atmyJhg0bomvXrli5cmWx81FKenI/TqDwXka///47BgwYgFtuuQVNmjRB79698csvvxS5j4sXL+KGG27A/Pnz89129OhR1K9fH8uXLwcAOBwOzJ8/H3fffTcaNWqEFi1a4LHHHsOuXbuKfSzX+v333/H999+jR48e+QJSgCvwN3bsWPX/hf19r+0BpPQi+uCDD7BixQrcddddaNKkCfr374+zZ89ClmUsWLAAt99+Oxo3bowhQ4bgypUrebZZWE+n9u3bY9y4cUU+rn379mHEiBG444470LBhQ7Rr1w5Tp06F1WrNM+cVK1ao+1L+FbT/TZs2oX79+vj555/z7WvVqlWoX78+/v33X/W6I0eOYMSIEWjevDkaNWqE7t27Y+vWrUXOuSi1a9dGXFwcTpw4ked6u92OuXPnomPHjurjnDFjBux2e55xpT32r+0ppRzzBf27tgfUjh070KtXL9x0001o2rQpBg0ahMOHD+fbx3fffYd77rkHjRo1wj333IMtW7aU9OnJIyIiAk2aNEFWVhYuX74MwPW3fOWVV9R9NWzYEN26dcMPP/xQpn0REZF/MFOKiIgoxD377LOoXr06nnvuOciyDAAYPnw4/vvvP/Tu3RuVK1fG5cuXsWvXLpw9exZVqlTx2L537NiBtLQ03HfffcWOVQJXa9euzdd/at26dYiIiECHDh0AAJ988gnq1q2L9u3bQ6fTYfv27ZgyZQpkWcbjjz/ukbnv3r0bTz31FBo2bIhhw4ZBEAR88cUXeOKJJ7By5Uo0bty4wPslJibi1ltvxcaNGzFs2LA8t23YsAFarRadO3cGAMyfPx8LFy5Ez5490bhxY2RkZOCPP/7An3/+WWS5Y0G2bdsGoOBsNU9Yu3YtHA4H+vTpgytXrmDx4sUYOXIkbrvtNuzZswdPPfUUjh8/juXLl2P69Ol44403PLLfTZs2wWq14rHHHkNsbCwOHDiA5cuX49y5c5g7dy4AV0bN+fPnsWvXrgJLSHO74447YDabsXHjRjRv3jzPbRs2bEDdunVRr149AMDhw4fx2GOPISkpCU899ZR6v6FDh2LevHno2LFjiR9Peno60tLSUK1aNfU6SZIwZMgQ/PLLL3j44YdRu3Zt/Pvvv1i6dCmSk5PxzjvvqGM9dezXrl0733OVnp6OadOmIT4+Xr3uq6++wrhx49CmTRs8//zzsFgs+OSTT9CrVy98+eWX6vvFjz/+iOHDh6NOnToYPXo0UlNTMX78+GKD0cU5deoUtFotYmJi1Ot++eUXfPvtt+jVqxciIyPx8ccfY8SIEdi+fTvi4uLKtD8iIvItBqWIiIhCXIMGDTBz5kz1/2lpafj1118xZswYDBgwQL3+6aef9vi+165dq5bmFUej0aBbt2744IMPcOzYMdSsWRMAkJGRgR07dqBjx46IjIwEACxfvhwmk0m9b+/evTFgwAB89NFHHglKybKMyZMno0WLFli8eDEEQQAAPProo+jWrRtmz56NDz/8sND7d+3aFS+//DL+/fdfNcABABs3bsStt96KxMREAK4MsHbt2uHVV18t85yPHDkCAHn250kpKSn49ttvER0dDcAVSFm4cCGsVis+//xztVdRamoq1q5diylTppSqBPRazz//fJ6/9SOPPILq1atj1qxZOHPmDCpVqoSmTZuiRo0a2LVrV7FBOZPJhPbt22Pz5s2YOHGi2mvqwoUL2Lt3b55A4uuvv47rrrsOn3/+ufpYevXqhcceewxvvfWWW0Epm82mZvmcOXMGs2fPhtPpzPOaWLt2Lf73v//h448/RrNmzdTr69ati0mTJmH//v24+eabAXju2E9MTMzzXMmyjCFDhkCv12PatGkAgMzMTLz++uvo2bNnnmP0wQcfROfOnbFw4UL1+rfeegsJCQlYuXKleow0b94c/fv3R+XKld2ak9PpVJ+r1NRUfPLJJ2p/tIiICHXckSNHsGHDBjWw16JFC9x///1Yv349evfu7fZzQERE/sfyPSIiohD36KOP5vm/yWSCXq/Hzz//jKtXr3ptvxkZGWrQJXeWQ1GUjKp169ap123evBk2m00t3QOQ50t5eno6Ll++jObNm+PkyZNIT08v89z//vtvJCcn495770VqaiouX76My5cvIysrCy1btsTevXuLXBGsY8eO0Ol0eUoR//33X/z333/o2rWrel1MTAwOHz6M5OTkMs85IyMDANTAnad17txZDTYAUDPF7rvvvjzNsxs3bgyHw4GUlBSP7Df331op42ratClkWcZff/1Vqm126dIFly5dylPCt3nzZkiSpP59rly5gp9++gldunRBRkaGegykpqaiTZs2SE5OdusxfvbZZ2jZsiVatmyJhx56CD/99BMGDhyYJxtw06ZNqF27NmrVqqXu5/Lly7jtttsAIE9ZqbeO/QULFmD79u2YNm0a6tSpAwD43//+h7S0NHTr1i3PvDQaDZo0aaLO6/z58/j777/x4IMP5jlGWrdurW7LHUePHlWfq65du2L58uW44447MHXq1DzjWrVqlSfTrEGDBoiKisLJkydL/fiJiMg/mClFREQU4q4txzMYDHj++ecxffp0tG7dGk2aNMEdd9yBBx54AOXLl/fYfgsKJhWnQYMGqFe
|
|
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
|
|
|
|
|
"image/png": "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
|
|
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
|
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAKyCAYAAADvidZRAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA9tBJREFUeJzs3Xd8E/UbB/DPZTdd0JYhtOwlskWQjSyZoojsDSLIHrJElmwBQUAE2cgQRX8KMgREBBUVAUUERRGQKaXQnXn3+yO9a0NXupK0+bxfL15ck2/uvkmb9vLc8zxfQZIkCURERERERERERG6m8vQEiIiIiIiIiIjINzEwRUREREREREREHsHAFBEREREREREReQQDU0RERERERERE5BEMTBERERERERERkUcwMEVERERERERERB7BwBQREREREREREXkEA1NEREREREREROQRDEwREREREREREZFHMDBFRERE6Nu3L/r27evpabjFjRs3ULlyZXzyySeengq5aMqUKWjRokWu7vOTTz5B5cqVcePGjVzdrzdL62d/5cqVqFy5stvnUrlyZaxcudLtxyUiIu/DwBQRERFly6+//opZs2ahS5cueOKJJ1z+cHv69GlUrlwZlStXRlRUVIZjhw0bhpo1ayIuLi7dMRMmTEC1atXw4MGDLM3f11y/fh0zZsxAy5YtUb16ddSpUwc9evTAli1bYDKZPD29PPPee+/hyJEjnp6GQg6Iyf+qVq2KJk2aYMqUKbh7966np+dV5ECa/O/xxx9H8+bNMWLECFy8eDFb++zbty86duyYyzMlIqKc0Hh6AkREROR5GzZsyPJjjh8/jo8//hiVKlVCeHg4rl69muljRFHE3LlzYTQakZCQkOn45557DseOHcORI0fw/PPPp7o/MTERX331FRo3bozChQtn+Tn4iq+//hpjxoyBTqdD586dUalSJVitVvz8889466238Ndff+HNN9/09DTzxNq1a/Hss8+iVatWTrd37twZHTp0gE6n88i8Ro8ejfDwcFgsFpw7dw6ffvopfv75Z+zbtw96vd5t8xg+fDiGDh3qtuNlR8eOHdG0aVOIooi///4bO3fuxDfffIPdu3fj8ccf9/T0iIgohxiYIiIiKqASEhJgNBpdGpudD+c9e/bEyy+/DIPBgDlz5rgUmPrwww9x+/ZtdO3aFVu3bs10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
|
|
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
|
|
|
|
|
"image/png": "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
|
|
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
|
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4U2UbBvD7ZKdtuqGAUPZQAQGRvURAhogigiwXiCB7KEMEQZYIyBSBsmWIHy6mAxFRUUDEjYLsKR20aZt9zvdHmkNDVzozev+uy8vT5M05b9LTcPLkeZ5XkCRJAhERERERERERUQlSeHsCRERERERERERU+jAoRUREREREREREJY5BKSIiIiIiIiIiKnEMShERERERERERUYljUIqIiIiIiIiIiEocg1JERERERERERFTiGJQiIiIiIiIiIqISx6AUERERERERERGVOAaliIiIiIiIiIioxDEoRURERBg4cCAGDhzo7WmUiMuXL6N27dr48MMPvT0V8tCkSZPQvn37It3nhx9+iNq1a+Py5ctFul9flt25v2zZMtSuXbvE51K7dm0sW7asxI9LRES+ReXtCRAREZH/EUURH3/8MT7//HP89ddfSE5ORsWKFdG1a1cMGjQIWq02y2M++OADrFu3DpcvX0b58uU9CoQNHToUR44cwXfffYeQkJBsx4wfPx6fffYZDh8+jIiIiCJ5foHo4sWLiIuLw3fffYf//vsParUatWrVQpcuXdCnTx/odDpvT7FYvPvuu6hRowY6dOjg7akAcAbDJk+eLP+sVCoRFRWFli1bYuzYsYiJifHi7HzL5cuX8dBDD8k/KxQKxMTE4N5778WIESNw991353ufAwcORFJSEnbv3l2UUyUiogJiUIqIiIiwdu3afI03mUyYPHkyGjRogKeeegpRUVH4+eefsWzZMhw5cgSbNm2CIAjy+O3bt2P69Ol4+OGH8dxzz+H48eOYNWsWTCYThgwZkuNxHn30URw8eBBffvklHnvssWzn8dVXX6FVq1YMSOXi66+/xujRo6HRaNCjRw/UqlULNpsNP/30E9566y2cOXMGb7zxhrenWSxWrVqFhx9+OEtQqkePHujWrRs0Go1X5jVq1ChUrFgRVqsVJ0+exEcffYSffvoJu3fvzjaoW1yGDRuW69+gL3jkkUfQpk0biKKIf//9F9u2bcM333yDHTt2FCgwRUREvoNBKSIiogCVnp6OoKAgj8bm94O5Wq3Gtm3b0KhRI/m23r1746677pIDUy1atAAAmM1mvP3222jXrh2WLl0qjxVFEStXrkSfPn0QFhaW7XHat2+P4OBg7Nq1K9ug1IEDB5Ceno5HH300X/MvTS5duoSxY8eiQoUK2LhxI8qWLSvf179/f1y4cAFff/219yboJUqlEkql0mvHb9OmDerVqwcAePLJJxEREYE1a9bgwIED6Nq1a4nNQ6VSQaXy7Y8E99xzD3r06CH/3KhRIwwbNgzbtm3DzJkzvTgzIiIqLPaUIiIiCgCuvjBnzpzB+PHj8cADD6Bfv34AgJs3b2Ly5Mlo06YN6tati1atWmHYsGFuvXTy21NKo9G4BaRcOnbsCAD4999/5dt+/PFH3Lp1S56PS//+/ZGenp5rQESn06FTp0744YcfkJCQkOX+3bt3Izg4GO3bt8etW7fw5ptvonv37mjYsCEaNWqEwYMH49SpU3k+n5yef3a9jERRxIYNG9CtWzfUq1cPLVq0wLRp05CcnJzrMdauXYvatWvjypUrWe5buHAh6tatK+/j/PnzGDlyJFq2bIl69eqhTZs2GDt2LIxGY57P5U5xcXFIT0/H7Nmz3QJSLpUrV8YzzzwDIPd+W3f2AHKdc+fOncOECRNw//33o1mzZli8eDEkScK1a9cwbNgwNGrUCC1btsS6devc9pdTT6cff/wRtWvXxo8//pjr81q7di2eeuopNG3aFPXr10fPnj2xf//+LHNOT0/HRx99hNq1a6N27dqYNGlStsd/8cUX3UrFMuvTpw969uzpdtsnn3yCnj17on79+mjSpAnGjh2La9eu5Trn3DRu3BiAM4iY2b///otRo0ahSZMmqFevHnr27IkDBw64jSnMuX9nT6lJkybJr9Wd/2X+/VutVixduhQdO3ZE3bp10bZtW8yfPx9Wq9Vt/1arFXPmzEGzZs3QsGFDDB06FNevX8/365NZs2bNAED+3bl+lz/99BPmzp2LZs2aoUGDBhg+fDgSExMLdSwiIipevv21CBEREeXL6NGjUblyZYwdOxaSJAEARo4ciTNnzmDAgAG46667kJiYiO+++w7Xrl1DxYoVi/T48fHxAOBWSvfnn38CAOrWres29t5774VCocBff/3llgVxp+7du+Ojjz7Cvn37MGDAAPn2W7du4dtvv0W3bt2g0+lw+vRpfPnll+jcuTMqVqyI+Ph4vP/++xgwYAD27NlTZL16pk2bho8++gg9e/bEwIEDcfnyZWzZsgV//vkntm3bBrVane3junTpgrfeegv79u3D4MGD3e7bt28fWrZsibCwMFitVgwaNAhWqxUDBgxAdHQ0bty4ga+//hopKSkwGAz5mu/BgwdRqVKlbIOIRWHs2LGoXr06xo8fj0OHDmHlypUIDw/H9u3b0axZM0yYMAG7du3Cm2++iXr16uGBBx4okuNu2rQJ7du3R/fu3WGz2bBnzx6MHj0aq1atQrt27QAA8+fPx9SpU1G/fn307t0bABAbG5vt/rp06YKJEyfi119/Rf369eXbr1y5gpMnT+KVV16Rb1u5ciWWLFmCLl26oFevXkhMTMR7772H/v374+OPP0ZoaGi+n48rWJn5sadPn0bfvn0RExODF154AUFBQdi3bx+GDx+OZcuWyUHgS5cuFdm536dPHzRv3tzttsOHD2PXrl2IjIwE4AzMDhs2DD/99BN69+6N6tWr459//sHGjRtx/vx5vPPOO/JjX331VXz66ad45JFH0KhRI/zwww+FLhe8ePEiACA8PNzt9lmzZiE0NBQjRozAlStXsHHjRsycOROLFy8u1PGIiKj4MChFREQUQOrUqYOFCxfKP6ekpODnn3/GK6+8gkGDBsm3v/jii8Vy/Li4OISEhKBNmzbybTdv3pSbOWem0WgQHh6O//77L9d9NmvWDGXKlMHu3bvdglL79++HzWZD9+7dATizYj777DMoFLcTwXv06IEuXbrgf//7H4YPH17o53f8+HF88MEHWLBggXxcAGjatCkGDx6M/fv3u92eWYUKFdCgQQPs3bvXLSj166+/4tKlSxgxYgQAZ2bM5cuXsWTJEnTu3Fke57o/P1JTU3Hjxo0cM4CKQv369eUSqj59+qB9+/aYN28exo0bJwcfHnnkEbRu3Ro7d+4ssqDUZ5995tacvX///ujZsyfWr18vB6V69OiB119/HZUqVco18AkAHTp0gEajwb59+9yCUvv27YMgCOjSpQsAZ/Bo2bJlGDNmDIYOHSqP69SpEx5//HFs3brV7facpKamIjExEVarFb/88guWL18OjUaDBx98UB4ze/ZslC9fHjt37pRLbPv164e+fftiwYIFclCqKM/9hg0bomHDhvLPFy5cwBtvvIGWLVviqaeeAgDs2rUL33//PTZv3ixneAFAzZo1MX36dJw4cQKNGjXCqVOn8Omnn6Jfv36YPn06AOfvafz48fj77789npPJZEJiYiJEUcTZs2cxd+5cAHD7+wCcQap169bJ/exEUcTmzZthNBrzHcwlIqKSwfI9IiKiAOL60Oii0+mgVqtx9OjRPMvLCuvdd9/F999/j/Hjx7tle5jN5hyzh7RaLcxmc677VSqV6NatG37++We3Uq/du3cjOjpazurQaDTyh3KHw4GkpCQEBQWhatWqcrZWYe3fvx8GgwEtW7ZEYmKi/N+9996LoKCgPEvOunTpgj/++EPO9ACcQQ+NRiM34natMvjtt9/CZDIVar6pqakAgODg4ELtJze9evWSt5VKJerWrQtJktxuDw0NRdWqVbOUphVG5oBUcnIyjEYj7r///gL/rl3B1H379slZhgCwd+9
|
|
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
|
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4U2UbBvD7ZKdtUjqg7L1EQEAE2YggWxRxgwtERpWpTGXIEBRliiDIEkT8cDFVcKGCiuIWBdmb0t3snPP9kZ7Thq60TZu0uX/XxUWavDl5k54m5zx5nucVJEmSQEREREREREREVIpUgZ4AERERERERERGFHgaliIiIiIiIiIio1DEoRUREREREREREpY5BKSIiIiIiIiIiKnUMShERERERERERUaljUIqIiIiIiIiIiEodg1JERERERERERFTqGJQiIiIiIiIiIqJSx6AUERERERERERGVOgaliIiICEOGDMGQIUMCPY1Sce7cOTRq1Ajvv/9+oKdCPpo8eTK6devm122+//77aNSoEc6dO+fX7Qaz3Pb9ZcuWoVGjRqU+l0aNGmHZsmWl/rhERBRcNIGeABEREZU9oijiww8/xKeffoq///4bKSkpqF69Ovr06YOhQ4dCr9d7jc/rpHfChAkYPnx4no8zYsQIHDx4EN9++y0iIiLy3MYnn3yCAwcOICoqquhPqpw7c+YM1qxZg2+//RZXrlyBVqtFw4YN0bt3b9x///0wGAyBnmKJeOONN1C/fn1079490FMB4AmGTZkyRflZrVYjJiYGHTp0wLhx4xAXFxfA2QWXc+fO4fbbb1d+VqlUiIuLw4033oj4+HjccMMNhd7mkCFDkJSUhJ07d/pzqkREVEQMShERERHWrl1bqPFWqxVTpkxBixYt8MADDyAmJgZHjhzBsmXLcPDgQWzcuBGCIHjdp0OHDhgwYIDXdU2aNMn3ce6880588cUX2LdvH+66665c5/H555+jY8eODEjl48svv8SYMWOg0+kwYMAANGzYEE6nEz/99BNefvllHD9+HC+++GKgp1kiVq1ahZ49e+YISg0YMAB9+/aFTqcLyLyeeeYZVK9eHQ6HA7/88gs++OAD/PTTT9i5c2eOoG5JGjlyZL6B4WDQr18/dO7cGaIo4r///sM777yDr7/+Gtu2bStSYIqIiIIHg1JERETllMViQVhYmE9jC3tirtVq8c4776BVq1bKdffddx+qVaumBKbat2/vdZ/atWvnCEoVpFu3bggPD8eOHTtyDUrt378fFosFd955Z6G2G0rOnj2LcePGoWrVqtiwYQMqVaqk3Pbwww/j9OnT+PLLLwM3wQBRq9VQq9UBe/zOnTujWbNmAIB7770XUVFRePPNN7F//3706dOn1Oah0Wig0QT3KUGTJk283jtatWqFkSNH4p133sHs2bMDODMiIiou9pQiIiIqB+S+MMePH8eECRNwyy234KGHHgIAXL16FVOmTEHnzp3RtGlTdOzYESNHjvTqpVPYnlI6nc4rICXr0aMHAOC///7L9X42mw12u93nxzEYDLjjjjtw6NAhXLt2LcftO3fuRHh4OLp164bk5GQsWLAA/fv3R8uWLdGqVSsMGzYMR48eLfBx8nr+ufUyEkUR69evR9++fdGsWTO0b98eL7zwAlJSUvJ9jLVr16JRo0Y4f/58jtsWLVqEpk2bKts4deoUnn76aXTo0AHNmjVD586dMW7cOKSlpRX4XK63Zs0aWCwWzJ071ysgJatVqxYeffRRAPn327q+B5C8z508eRITJ07EzTffjFtvvRWLFy+GJEm4ePEiRo4ciVatWqFDhw546623vLaXV0+n77//Ho0aNcL333+f7/Nau3YtHnjgAbRt2xbNmzfHwIEDsXfv3hxztlgs+OCDD9CoUSM0atQIkydPzvXxn3rqKa9Ssezuv/9+DBw40Ou6jz76CAMHDkTz5s3Rpk0bjBs3DhcvXsx3zvlp3bo1AE8QMbv//vsPzzzzDNq0aYNmzZph4MCB2L9/v9eY4uz71/eUmjx5svJaXf8v++/f4XBg6dKl6NGjB5o2bYouXbpg4cKFcDgcXtt3OByYN28ebr31VrRs2RIjRozApUuXCv36ZHfrrbcCgPK7k3+XP/30E+bPn49bb70VLVq0wOjRo5GYmFisxyIiopIV3F+LEBERUaGMGTMGtWrVwrhx4yBJEgDg6aefxvHjxzF48GBUq1YNiYmJ+Pbbb3Hx4kVUr17dr4+fkJAAALmW0n3wwQfYsmULJElCvXr1MHLkSPTv37/Abfbv3x8ffPAB9uzZg8GDByvXJycn45tvvkHfvn1hMBhw7Ngx7Nu3D7169UL16tWRkJCAd999F4MHD8auXbv81qvnhRdewAcffICBAwdiyJAhOHfuHDZv3oy//voL77zzDrRaba736927N15++WXs2bMHw4YN87ptz5496NChAyIjI+FwODB06FA4HA4MHjwYsbGxuHz5Mr788kukpqbCZDIVar5ffPEFatSokWsQ0R/GjRuHevXqYcKECfjqq6+wcuVKVKhQAVu3bsWtt96KiRMnYseOHViwYAGaNWuGW265xS+Pu3HjRnTr1g39+/eH0+nErl27MGbMGKxatQpdu3YFACxcuBDTp09H8+bNcd999wEAatasmev2evfujUmTJuG3335D8+bNlevPnz+PX375Bc8995xy3cqVK7FkyRL07t0bgwYNQmJiIt5++208/PDD+PDDD2E2mwv9fORgZfb7Hjt2DA8++CDi4uLw5JNPIiwsDHv27MHo0aOxbNkyJQh89uxZv+37999/P9q1a+d13YEDB7Bjxw5ER0cD8ARmR44ciZ9++gn33Xcf6tWrh3///RcbNmzAqVOn8Prrryv3nTZtGj7++GP069cPrVq1wqFDh4pdLnjmzBkAQIUKFbyunzNnDsxmM+Lj43H+/Hls2LABs2fPxuLFi4v1eEREVHIYlCIiIipHGjdujEWLFik/p6am4siRI3juuecwdOhQ5fqnnnqqRB5/zZo1iIiIQOfOnb2ub9myJXr37o3q1avjypUr2LJlCyZOnIi0tDQloysvt956KypWrIidO3d6BaX27t0Lp9OpBLYaNWqETz75BCpVViL4gAED0Lt3b/zvf//D6NGji/38Dh8+jPfeew+vvPKKV0Ctbdu2GDZsGPbu3ZtnoK1q1apo0aIFdu/e7RWU+u2333D27FnEx8cD8GTGnDt3DkuWLEGvXr2UcfLthZGeno7Lly/nmQHkD82bN1dKqO6//35069YNL730EsaPH68EH/r164dOnTph+/btfgtKffLJJ17N2R9++GEMHDgQ69atU4JSAwYMwMyZM1GjRo0CS0e7d+8OnU6HPXv2eAWl9uzZA0EQ0Lt3bwCe4NGyZcswduxYjBgxQhl3xx134O6778aWLVu8rs9Leno6EhMT4XA48Ouvv2L58uXQ6XS47bbblDFz585FlSpVsH37dqXE9qGHHsKDDz6IV155RQlK+XPfb9myJVq2bKn8fPr0abz44ovo0KEDHnjgAQDAjh078N1332HTpk1KhhcANGjQADNmzMDPP/+MVq1a4ejRo/j444/x0EMPYcaMGQA8v6cJEybgn3/+8XlOVqsViYmJEEURJ06cwPz58wHA6+8D8ASp3nrrLaWfnSiK2LRpE9LS0godzCUiotLB8j0iIqJyRD5plBkMBmi1Wvzwww8FlpcV1xtvvIHvvvsOEyZMyJEpsnXrVjz66KO4/fbb8eCDD2L79u1o2LAhXnvtNdhstny3q1ar0bdvXxw5csSr1Gvnzp2IjY1Vsjp0Op1yUu52u5GUlISwsDDUqVMHf/31l1+e4969e2EymdChQwckJiYq/2688UaEhYUVWHLWu3dv/Pnnn0qmB+AJeuh0OqURt7zK4DfffAOr1Vqs+aanpwMAwsPDi7Wd/AwaNEi5rFar0bRpU0iS5HW92WxGnTp1cpSmFUf2gFRKSgrS0tJw8803F/l3LQdT9+zZo2QZAsDu3bvRokULVK1aFQDw2WefQRRF9O7d22sfiI2NRa1atQr
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA/pZJREFUeJzs3Xd4U2UbBvD7ZKdtuhlC2VMFBETZQwRliCggDoYKiCDIVoYoQwFBQKYIggioIIioIOBAVPRDBBEnKMiSTWlp02afc74/0pw2dKUzo/fvurhIkzfnvElzmpMnz/O8gizLMoiIiIiIiIiIiEqRyt8TICIiIiIiIiKisodBKSIiIiIiIiIiKnUMShERERERERERUaljUIqIiIiIiIiIiEodg1JERERERERERFTqGJQiIiIiIiIiIqJSx6AUERERERERERGVOgaliIiIiIiIiIio1DEoRUREREREREREpY5BKSIiIsKAAQMwYMAAf0+jVJw7dw716tXDRx995O+pkI8mTZqEjh07Fus2P/roI9SrVw/nzp0r1u0Gspxe+0uXLkW9evVKfS716tXD0qVLS32/REQUWDT+ngAREREFp82bN+PTTz/FyZMnkZqaivLly6N58+YYMWIEEhISso3fsmUL3n77bZw7dw433XSTT4GwYcOGYf/+/fjhhx8QERGR45jx48fj888/x759+xATE1Msjy0UnT17FqtXr8YPP/yAK1euQKvVom7duujatSsefvhhGAwGf0+xRLz55puoXbs2OnXq5O+pAHAHwyZPnqz8rFarERcXh9atW2Ps2LGoUKGCH2cXWM6dO4e7775b+VmlUqFChQq49dZbMXLkSNx8880F3uaAAQOQnJyMHTt2FOdUiYiokBiUIiIiIqxZs6bA9/nrr7+QkJCAjh07IjIyEufOncOWLVuwd+9efPLJJ14frjdt2oRp06bh3nvvxZNPPolDhw7hlVdegdVqxdChQ3Pdx/3334+9e/fiq6++wgMPPJDtdqvViq+//hpt2rRhQCoP33zzDUaPHg2dToeePXuibt26cDqd+Pnnn/Haa6/hxIkTePnll/09zRKxcuVK3HvvvdmCUj179kT37t2h0+n8Mq9Ro0YhISEBDocDR44cwbZt2/Dzzz9jx44d0Ov1pTaP4cOH53kMBoL77rsP7dq1gyRJ+Pfff7Fx40Z8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
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "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
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA8rNJREFUeJzs3Xd4U2UbBvD7ZCfdi5a9l+whyBJEQIY4UBQVENkIspeIgCigCIiAyEamuHAgSwVE+GSIDFFRRNmzCzqyzznfH2lSQnebNml6/66LizR5c8570qTJefI8zyvIsiyDiIiIiIiIiIioCCm8PQEiIiIiIiIiIip5GJQiIiIiIiIiIqIix6AUEREREREREREVOQaliIiIiIiIiIioyDEoRURERERERERERY5BKSIiIiIiIiIiKnIMShERERERERERUZFjUIqIiIiIiIiIiIocg1JERERERERERFTkGJQiIiLykD59+qBPnz7enkaROHLkCGrWrIkjR454eyqUS4Xx/Fy8eDFq1qzp0W36usye+5MnT0b79u2LdB5XrlxBzZo1sXXr1iLdLxERkScxKEVEROQjbDYbunbtipo1a2L16tUZbpckCStXrkT79u1Rr149dO/eHd9++22O2+3evTvatWsHWZazHNOrVy+0bNkSdru9QMfg786cOYPx48ejbdu2qFu3Lpo1a4Z+/frhiy++gCiK3p5eoTCZTFi8eLFPBSCdwTDnvzp16qB9+/Z46623kJSU5O3p+RRnEO3ux+rhhx/GxIkTcfny5Xxts3379hgyZIiHZ0pERCWRytsTICIi8heZBZLyYuPGjbh+/XqWt7/33ntYsWIFnnnmGdSrVw979uzBuHHjIAgCunXrluX9unfvjvnz5+PYsWO4//77M9x+5coVnDx5Er1794ZKxY8GWfnss88wffp0RERE4PHHH0fFihWRmpqKw4cP47XXXkNsbCyGDh3q7Wl6nMlkwpIlSzBixAg0b97c7bZhw4Zh8ODBXpoZMGPGDBgMBphMJhw6dAgbNmzAH3/8gY8//rhI5/Hmm29mG/T1BX369EG9evVgt9vx559/4pNPPsH+/fvxzTffIDo62tvTIyKiEoqfPImIiLJhNBphMBhyNVaj0eR7P/Hx8fjggw8wcOBALFq0KMPtN2/exNq1a/HCCy9g2rRpAICePXuid+/emDt3Ljp37gylUpnptrt3744FCxZg27ZtmQaltm/fDlmW0b1793zP39+dPHkS06dPR8OGDbFixQoEBga6buvXrx9Onz6Nf/75x4sz9A6VSuXVQOYjjzyC8PBwAI5svzFjxmDHjh347bffUL9+/SKbh1qtLrJ95VfTpk3RuXNnAMBTTz2FSpUq4a233sJXX33FrCciIvIalu8RERGlcZYEnTt3DuPGjcP999+P559/HgAQGxuLV199FQ8++CDq1q2L1q1bY9iwYbhy5Yrr/gXp2TNv3jxUrlwZjz32WKa3//DDD7DZbK75AIAgCHjuuedw48YNnDhxIsttly5dGvfffz92794Nm82W4fZvv/0WFSpUQIMGDXD16lXMmDEDjzzyCOrXr4/mzZtj5MiRbseZlfbt22Py5MkZrs/scbFarVi0aBE6duyIunXrom3btpg7dy6sVmu2+5g5cyYaNWoEk8mU4baxY8eiVatWrjK606dPY8CAAWjevDnq16+P9u3b49VXX83xODKzZMkSCIKAefPmuQWknOrVq4cePXoAyLrfVmY9gCZPnoxGjRrh2rVrGDJkCBo1aoQ2bdpg06ZNAIC///4bffv2RcOGDfHQQw9h27ZtbtvMqqfT1q1bUbNmzWx/b1arFe+//z569OiBJk2aoGHDhnj++edx+PBhtzm3aNHC9Rg4S8AWL16c6f4fffTRTF8DkiShTZs2GDlypNt1H330Ebp164Z69eqhZcuWmDZtGu7cuZPlnHPStGlTAMClS5fcrj916hQGDBiAJk2aoEGDBujduzd+/fVXtzEFee7f21OqT58+biVzd/+7+/eflJSEWbNmucpBO3bsiBUrVkCSJLftJyUlYfLkyWjSpAmaNm2KSZMmITk5Oc+Pz90eeOABAHAdn/N3efHiRUyePBlNmzZFkyZN8Oqrr2b6eiMiIvIEZkoRERHdY9SoUahYsSLGjBnjKsl55ZVXcO7cOfTu3Rtly5ZFQkIC/ve//+H69esoV65cgfb322+/4auvvsLmzZshCEKmY86cOQODwYCqVau6Xe/MBjlz5ozrhDwz3bt3x+uvv46DBw/ioYcecl3/999/4+zZsxg+fDgARyDnxIkT6NatG2JiYnD16lV8/PHH6Nu3L7Zv3w69Xl+gYwUcwYhhw4bh119/xTPPPIOqVavi7NmzWLduHS5cuIClS5dmed+uXbti06ZN+PHHH9GlSxfX9SaTCfv27cOTTz4JpVKJ+Ph4DBgwAGFhYRg8eDCCg4Nx5coVfP/993mer8lkwuHDh9G0aVOUKVMmX8ecHVEUMWjQIDRt2hTjx4/Htm3bMHPmTOj1erz33nvo3r07OnXqhC1btmDSpElo2LAhypcvX+D9pqSk4LPPPsOjjz6Knj17IjU1FZ9//jkGDhyIzz77DLVr10Z4eDhmzJiBGTNmoGPHjujYsSMAZNncvEuXLliyZAliY2MRFRXluv7XX3/FrVu30LVrV9d106ZNw5dffokePXqgT58+uHLlCjZt2oQ///wTH3/8cb6yj5wBluDgYNd1hw4dwqBBg1C3bl2MGDECgiBg69atePHFF7F582bXa8iTz/2hQ4fi6aefdrvum2++wcGDBxEREQHA8bzq3bs3bt68iV69eqF06dI4ceIEFixYgNjYWLz22msAAFmW8fLLL+PXX39Fr169ULVqVXz//feYNGlSnh+fuzkDd6GhoW7Xjx49GuXKlcPYsWPx559/4rPPPkN4eDgmTJhQoP0RERFlhkEpIiKie9SqVQvz5893/ZyUlIQTJ05g4sSJGDBggOt6T5S8yLKMN998E127dkWjRo2yzMqIjY1FREREhqCV88T/1q1b2e7nkUcewZtvvolvv/3WLSjlbJTuLN1r166dq8TH6aGHHsKzzz6L3bt344knnsjT8WVm27Zt+Pnnn7Fhwwa3QFr16tUxffp0HD9+HI0bN870vk2aNEF0dDR27tzpFpT68ccfYTQaXUGPEydO4M6dO1i9ejXq1avnGjdmzJg8z/fixYuw2WyoUaNGnu+bGxaLBY899pjr+dS9e3e0adMGU6ZMwYIFC1zH1LJlS3Tp0gVfffUVXnnllQLvNyQkBHv37nUrO33mmWfQpUsXbNiwAbNnz4bBYMAjjzyCGTNmoGbNmnj88cez3WbXrl2xaNEi7N69G71793Zdv2PHDhgMBrRr1w4AcOzYMXz22WeYN2+eW9lo8+bNMXDgQOzatStX5aTOrCpn4HDz5s0IDw93lanKsowZM2agefPmWLVqlev106tXL3Tr1g0LFy7EmjVrAHj2ud+qVSu3n48fP44jR47gqaeeQtu2bQEAa9euxeXLl/Hll1+iUqVKrnmVKlUKq1evRv/+/VG6dGns2bMHv/zyCyZMmICBAwcCAJ577jn07ds31/MBgNTUVCQkJMBut+PMmTOYNWsWBEFAp06d3MbVrl0bs2fPdv18+/ZtfP755wxKERFRoWD5HhER0T169erl9rNOp4NarcbRo0cLVFqUma1bt+Ls2bMYP358tuPMZnOmPau0Wq3r9uyEhISgbdu22Lt3L4xGIwDHCfv27dtRt25dVK5cGYDjWJ1sNhsSExNRoUIFBAcH488//8zTsWVl165dqFq1KqpUqYKEhATXP2c5UXarvAmCgM6dO2P//v1ITU11Xb9z505ER0ejSZMmAICgoCAAjmBVZiWLeZGSkgIACAgIKNB2stOzZ0/X5eDgYFSuXBl6vd4t8FalShUEBwfne8W0eymVStdzSpIk3L59G3a7HXXr1s3377py5cqoXbs2duzY4bpOFEXs3r0b7du3dz2/du3ahaCgILRq1crtOVCnTh0YDIZcr/TXuXNntGjRAu3bt8e
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA4C9JREFUeJzs3XmcTfUfx/HX3ebOziz2fVehlJ1KIlulREm0WEqFZCnapCQqkq0UlUiiXUhSafmV9kIpyhIymBlmvfv9/XHN5Zo7DGbmDvf9fDw8nDnne875nDtn7sz53O/38zV4vV4vIiIiIiIiIiIiJcgY6gBERERERERERCT8KCklIiIiIiIiIiIlTkkpEREREREREREpcUpKiYiIiIiIiIhIiVNSSkRERERERERESpySUiIiIiIiIiIiUuKUlBIRERERERERkRKnpJSIiIiIiIiIiJQ4JaVERERERERERKTEKSklIiIiclj//v3p379/qMOQQlq/fj0NGjRg/fr1RXrcBg0aMHPmzCI9Zml37L2/a9cuGjRowDvvvFOicYwdO5YOHTqU6DlFRCR0lJQSERGRkPr7778ZOHAgTZs2pUWLFowZM4a0tLTj7vPxxx/ToEEDli1bVmCbr7/+mgYNGvDaa68VdchnFbvdzquvvkrv3r256KKLaNy4MZ07d+axxx5j27ZtoQ6v2Kxbt67UJZ4aNGgQ8O/CCy+kX79+fP7556EOrdTp379/wGvVokULrrvuOt566y08Hs9JH++dd96hQYMGbNiwoRiiFRGRgphDHYCIiIiEr71793LTTTcRFxfHvffeS05ODi+//DJ//fUXy5YtIyIiIuh+7du3Jy4ujuXLl9O7d++gbT788ENMJhPdu3cvzks4o6WlpTFo0CA2bdrEZZddxpVXXkl0dDTbtm1j5cqVLF26lI0bN4Y6zGKxbt06Xn/9dYYNG5Zv22+//YbJZApBVNC2bVt69OiB1+tlz549vPHGGwwZMoSXXnqJiy++uMTiqFKlCr/99htmc+l9XKhYsSIjR44EID09nffee48HH3yQ7du3M3r06BBHJyIihVF6f8uIiIhIPjk5OURHR4c6jCLzwgsvkJubyzvvvEPlypUBaNKkCbfddhvvvvsuN9xwQ9D9IiIi6Ny5M++88w4pKSlUqFAhYLvdbmfNmjW0adOGpKSkYr+OM9W4ceP4448/mDFjBp07dw7YNmLECJ599tkQRRZaVqs1ZOeuWbMmPXr08H/duXNnunXrxmuvvVaiSSmDwRDS16Ew4uLiAl6rG264gS5duvD6669zzz33YLFYQhidiIgUhobviYiIlFIzZ86kQYMGbN26lVGjRtG8eXP69u0LwObNmxk7diyXX345jRs3pm3btowbN4709PSgx9ixYwdjx46lWbNmXHTRRYwbN47c3NyAtjabjYkTJ9KyZUuaNm3KkCFDSElJCVpfJyUlhXHjxtGmTRsaNWpE9+7deeutt076Gj/++GPat2/vT0gBtGnThpo1a7Jq1arj7nv11Vfj8XhYuXJlvm2ff/45mZmZXHXVVQC8/fbb3HzzzbRu3ZpGjRrRrVs3Fi9efML48ob07Nq1K2B9QbWMfv31VwYOHMhFF13E+eefT79+/fjxxx+Pe44DBw5w7rnnMmvWrHzb/vnnHxo0aMCiRYsAcDqdzJo1iyuuuILGjRvTsmVLbrzxRr7++usTXsuxfv31Vz7//HN69eqVLyEFvsTf/fff7/+6oHpbx9YAyqtFNH/+fF5//XUuv/xyzj//fAYMGMB///2H1+tl9uzZXHLJJTRp0oQ777yTgwcPBhyzoJpOHTp0YOzYsce9rh9++IHhw4fTvn17GjVqxKWXXsqkSZOw2WwBMb/++uv+c+X9C3b+jz76iAYNGvDdd9/lO9eSJUto0KABf/31l3/d33//zfDhw2nRogWNGzemZ8+erF279rgxH0+dOnVISEhg586dAesdDgczZsygU6dO/ut86qmncDgcAe1O9d4/tqZU3j0f7N+xNaDWrVtH3759ueCCC2jatCm33347W7ZsyXeOTz75hCuvvJLGjRtz5ZVXsmbNmpN9eQJERUVx/vnnk5OT4x8C3KBBAx577DH/ufLer7744ovTOpeIiBQN9ZQSEREp5e655x5q1KjBvffei9frBeB///sf//77Lz179qRcuXJs2bKFpUuXsnXrVpYuXYrBYAg4xogRI6hatSojR47k999/Z9myZSQmJjJmzBh/m7Fjx7Jq1Sp69OjB+eefz/fff8/tt9+eL54DBw5w/fXXYzAYuOmmm0hMTOSLL77gwQcfJCsri1tvvbVQ15WSkkJqaiqNGjXKt61JkyYnfGhs3rw5FStWZPny5dx2220B2z788EOioqLo2LEjAG+88Qb16tWjQ4cOmM1mPvvsMyZMmIDX6+Wmm24qVLwn8s033zB48GAaNWrE0KFDMRgMvPPOO9xyyy0sXryYJk2aBN0vOTmZ5s2bs2rVKoYOHRqwbeXKlZhMJrp06QLArFmzmDt3Lr1796ZJkyZkZWWxceNGNm3aRNu2bU8q3k8//RQgoKdJUVq+fDlOp5P+/ftz8OBB5s2bx4gRI2jVqhXr169n8ODB7Nixg0WLFjFlyhSefPLJIjnvRx99hM1m48Ybb6Rs2bL89ttvLFq0iL179zJjxgzA16Nm3759fP311zz11FPHPV779u2Jjo5m1apVtGjRImDbypUrqVevHvXr1wdgy5Yt3HjjjVSoUIHBgwf797v77ruZOXMmnTp1OunryczMJCMjg+rVq/vXeTwe7rzzTn788Ueuv/566tSpw19//cWCBQvYvn07c+bM8bctqnu/Tp06+V6rzMxMJk+eTGJion/de++9x9ixY2nXrh2jR48mNzeXN954g759+/Luu+9StWpVAL766iuGDRtG3bp1GTVqFOnp6YwbN46KFSue9Gt0tF27dmEymYiPj/ev+/HHH/n444/p27cvMTExLFy4kOHDh/PZZ5+RkJBwWucTEZHTo6SUiIhIKdewYUOmTp0asK5v374MGDAgYN0FF1zAyJEj+fHHH2nWrFnAtnPOOYdJkyb5vz548CBvvfWWPym1adMmVq1axS233MIDDzwAwE033cS4cePYvHlzwLGeffZZ3G43y5cv9z/Q3XjjjYwcOZJZs2bRp08fIiMjT3hd+/btA6BcuXL5tpUrV46DBw/icDgKrCtlNBrp3r078+fPZ9u2bdSqVQuArKws1q1bR6dOnYiJiQFg0aJFATH169ePgQMH8sorrxRJUsrr9fLoo4/SsmVL5s2b508K9unTh+7duzN9+nRefvnlAvfv1q0bjzzyCH/99Zc/wQGwatUqmjdvTnJyMuDrAXbppZfy+OOPn3bMf//9N0DA+YpSSkoKH3/8MXFxcYAvkTJ37lxsNhtvv/22v1ZReno6y5cvZ8KECQV+r0/G6NGjA77XN9xwAzVq1GDatGns2bOHypUr07RpU2rWrMnXX399wqRcZGQkHTp0YPXq1Tz00EP+WlP79+/n+++/D0gkPvHEE1SqVIm3337bfy19+/blxhtv5JlnnilUUsput/t7+ezZs4fp06fjdrsDerMtX76c//3vfyxcuDDgZ71evXqMHz+en376iQsvvBAouns/OTk54LXyer3ceeedWCwWJk+eDEB2djZPPPEEvXv3DrhHr732Wrp06cLcuXP965955hmSkpJYvHix/x5p0aIFAwYMoEqVKoWKye12+1+r9PR03njjDX99tKioKH+7v//+m5UrV/oTey1btqRHjx6sWLGCfv36Ffo1EBGRoqfheyIiIqVcnz598q07+iEz7yH2/PPPB3wJphMdo1mzZhw8eJCsrCwAvvzySwD/8MA8xz6web1ePv74Yzp06IDX6yUtLc3/r127dmRmZgY9fzB2ux0gaCIir5bN0UOugrn66qsBX8+oPKtXr8Zut/uH7kHg65WZmUlaWhotWrTg33//JTMzs1DxHs8ff/zB9u3bueqqq0hPT/e/Jjk5ObRu3Zrvv//+uDOCderUCbPZHDAU8a+//mLr1q1
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "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
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA9U1JREFUeJzs3Xd4U2UbBvD7ZKcLOtgbmTIVBNnIkinCB4gMZQnI3gIiIiICyt5QQJYsFVGmiMhQRBAEZSgoe0kp0Jl9vj/SnDY0bdM2Jc3J/bsuL0+TNzlP0jel5+nzPq8giqIIIiIiIiIiIiKip0jh7QCIiIiIiIiIiMj/MClFRERERERERERPHZNSRERERERERET01DEpRURERERERERETx2TUkRERERERERE9NQxKUVERERERERERE8dk1JERERERERERPTUMSlFRERERERERERPHZNSRERERERERET01DEpRUREROSm8uXLY+HChd4Og9y0cOFClC9f3qPPefz4cZQvXx7Hjx/36PPmdk/O/a+++grly5fHzZs3n2ocTZo0wfjx45/qOYmIKOeovB0AERER+ZezZ8/iq6++wtmzZ/HXX3/BYrHgr7/+SjXOYDBg6tSpOHv2LO7cuQObzYZixYrhf//7H7p16wa1Wp3mOaZNm4b169fju+++Q4kSJVyOmTt3LpYtW4YdO3agQoUKHnt9chMVFYVVq1bh4MGDuHPnDgRBQOnSpdGsWTP06NEDISEh3g4xR2zcuBF6vR4dO3b0digA7MmwN954Q/paoVAgb968eOGFFzB8+HA888wzXowu90mZjBQEAREREShXrhwGDBiA2rVrZ/r5xo8fj3379uH06dOeDJOIyO8xKUVERERP1aFDh/DFF1+gXLlyKFq0KK5evepynMFgwOXLl9GwYUMUKVIECoUCp0+fxscff4yzZ89i9uzZaZ6jXbt2WL9+Pb799lsMGTLE5ZidO3eiXLlyTEil4+zZs+jfvz8SEhLwyiuvoFKlSgCAP//8EytXrsTJkyexevVqL0eZMzZt2oTQ0NBUSakXXngBZ8+eTTcpmpN69uyJKlWqSMnczZs34/jx49i5cyfy5cv31OJo37492rRpA41G89TOmVn16tVD+/btIYoibt68iU2bNuHNN9/E8uXL0ahRI2+HR0REYFKKiIgo10tISEBAQIC3w/CY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
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA3OZJREFUeJzs3Xd4FFUXx/Hv1vRACoRelKYUAZGOIk2KyCsiIMUGIgrSVVAUQUVFQToiXUUQxEZVxK5YELGCgjTpkATSs/X9Y8lCSAIJJNmU3+d58jC7e+fOnc1OyJyce67B7Xa7ERERERERERERyUdGXw9ARERERERERESKHwWlREREREREREQk3ykoJSIiIiIiIiIi+U5BKRERERERERERyXcKSomIiIiIiIiISL5TUEpERERERERERPKdglIiIiIiIiIiIpLvFJQSEREREREREZF8p6CUiIiIiIiIiIjkOwWlRERERM46dOgQNWvW5L333vP1UCSbxo4dS5s2bXK1z/fee4+aNWty6NChXO23IMvssz9r1ixq1qyZ72OpWbMms2bNyvfjiohI/jP7egAiIiJStLhcLj744AM++eQTdu7cyZkzZ6hQoQKdO3dmwIAB+Pn5Zdhn9erVLF68mEOHDlG2bFn69+9P//79L3qcwYMHs3XrVr799luCg4MzbTN69Gg+/vhjvv76a8LCwnLl/IqigwcPsnDhQr799ltOnDiBxWKhRo0adOrUiV69euHv7+/rIeaJ1157jWrVqtGuXTtfDwXwBMPGjRvnfWwymYiIiKBFixaMHDmSqKgoH46uYDl06BBt27b1PjYajURFRVG7dm2GDh3KNddck+M++/fvT2xsLOvWrcvNoYqIyEUoKCUiIiK5Kjk5mXHjxlG/fn169+5NREQEv/zyC7NmzWLr1q288cYbGAwGb/uVK1cyYcIEbrnlFu677z62bdvGc889R3JyMoMGDcryOLfddhuff/45n376Kf/73/8yHcdnn31Gy5YtFZC6iC+++ILhw4djtVrp1q0bNWrUwG638/PPP/Pyyy+zZ88enn32WV8PM0/Mnz+fW265JUNQqlu3bnTp0gWr1eqTcQ0bNowKFSpgs9nYsWMH77//Pj///DPr1q3LNKibVx566KGLXoMFwa233sqNN96Iy+Xi33//ZcWKFXz11VesWrXqsgJTIiKSvxSUEhERKQCSkpIIDAz09TByhcViYcWKFTRs2ND7XM+ePSlfvrw3MNW8eXMAUlJSePXVV2ndujUzZ870tnW5XMybN49evXpRokSJTI/Tpk0bgoKCWLt2baZBqS1btpCUlMRtt92W+ydZRPz333+MHDmScuXKsWzZMkqXLu19rW/fvhw4cIAvvvjCdwP0EZPJhMlk8tnxb7zxRurWrQvAnXfeSVhYGAsWLGDLli107tw538ZhNpsxmwv27cK1115Lt27dvI8bNmzIQw89xIoVK5g0aZIPRyYiItmhmlIiIiL5LK1Oy549exg9ejQ33HADffr0AWDXrl2MHTuWtm3bUrduXVq0aMG4ceOIjY3NtI8DBw4wduxYGjVqxPXXX8+4ceNITk5O1zYlJYXnnnuOJk2a0KBBAwYPHszx48czrdty/Phxxo0bR/PmzalTpw5dunTh3XffzdH5Wa3WdAGpNO3btwfg33//9T73ww8/cPr0ae/5p+nbty9JSUkXDYj4+/vToUMHvv/+e6KjozO8vm7dOoKCgmjTpg2nT5/mpZdeomvXrjRo0ICGDRsycOBAdu3adcnzyWoqYWa1jFwuF0uXLqVLly7UrVuX5s2b8/TTT3PmzJmLHmPRokXUrFmTw4cPZ3ht6tSp1KlTx9vH/v37eeSRR2jRogV169blxhtvZOTIkcTHx1/yXC60cOFCkpKSeP7559MFpNJUrlyZe+65B7h4va0LP0tpn899+/YxZswYrr/+epo2bcr06dNxu90cPXqUhx56iIYNG9KiRQsWL16crr+sajr98MMP1KxZkx9++OGi57Vo0SJ69+5NkyZNqFevHt27d2fTpk0ZxpyUlMT7779PzZo1qVmzJmPHjs30+A8++GC6qWLn69WrF927d0/33Icffkj37t2pV68ejRs3ZuTIkRw9evSiY76YRo0aAZ4g4vn+/fdfhg0bRuPGjalbty7du3dny5Yt6dpcyWf/wppSY8eO9b5XF36d//232WzMnDmT9u3bU6dOHW666SamTJmCzWZL17/NZmPy5Mk0bdrU+7Pp2LFjOX5/zte0aVMA7/cu7Xv5888/88ILL9C0aVPq16/PkCFDiImJuaJjiYjIlSvYf/oQEREpwoYPH07lypUZOXIkbrcbgO+++47//vuP7t27U6pUKXbv3s2qVavYs2cPq1atSjftDWDEiBFUqFCBUaNG8ddff7F69WrCw8N59NFHvW3Gjh3Lxo0b6datG9dddx0//fRTplNyTp06Rc+ePTEYDPTt25fw8HC++uornnzySRISErj33nuv6HxPnToFkG4q3V9//QVAnTp10rWtXbs2RqORnTt3psuCuFDXrl15//332bhxI/369fM+f/r0ab755hu6dOmCv78/u3fv5tNPP6Vjx45UqFCBU6dO8c4779CvXz/Wr1+fa7V6nn76ad5//326d+9O//79OXToEMuXL+evv/5ixYoVWCyWTPfr1KkTL7/8Mhs3bmTgwIHpXtu4cSMtWrSgRIkS2Gw2BgwYgM1mo1+/fkRGRnL8+HG++OIL4uLiCAkJydF4P//8cypWrJhpEDE3jBw5kquvvprRo0fz5ZdfMm/ePEqWLMnKlStp2rQpY8aMYe3atbz00kvUrVuXG264IVeO+8Ybb9CmTRu6du2K3W5n/fr1DB8+nPnz59O6dWsApkyZwvjx46lXrx49e/YEoFKlSpn216lTJx5//HF+++036tWr533+8OHD7Nixg8cee8z73Lx585gxYwadOnWiR48exMTE8NZbb9G3b18++OADQkNDc3w+acHK8/fdvXs3d911F1FRUTzwwAMEBgayceNGhgwZwqxZs7xB4P/++y/XPvu9evWiWbNm6Z77+uuvWbt2LeHh4YAnMPvQQw/x888/07NnT66++mr++ecfli1bxv79+5k7d6533yeffJKPPvqIW2+9lYYNG/L9999f8XTBgwcPAlCyZMl0zz/33HOEhoYydOhQDh8+zLJly5g0aRLTp0+/ouOJiMiVUVBKRETER2rVqsXUqVPTPdenTx/uv//+dM/Vr1+fUaNG8fPPP3szJtJcc801TJ482fv49OnTvPvuu96g1J9//snGjRu55557eOKJJwBPFtK4ceMyZEq8+uqrOJ1O1q5d6w0c3XXXXYwaNYrZs2fTu3fvKyp4vXDhQoKDg7nxxhu9z508edJbzPl8VquVkiVLcuLEiYv22bRpU0qVKsW6devSBaU2bdqE3W6na9eugCcr5uOPP8ZoPJck3q1bNzp16sS7777LkCFDLvu80mzbto3Vq1fzyiuveI8L0KRJEwYOHMimTZvSPX++cuXKUb9+fTZs2JAuKPXbb7/x33//MXToUMCTGXPo0CFmzJhBx44dve3SXs+JhIQEjh8/nmUGUG6oV6+edwpVr169aNOmDS+++CKjRo3yBh9uvfVWWrVqxZo1a3ItKPXxxx+n+6z27duX7t27s2TJEm9Qqlu3bjzzzDNUrFjxooFPgHbt2mG1Wtm4cWO6oNTGjRsxGAx06tQJ8ASPZs2axYgRIxg8eLC3XYcOHbj99tt5++230z2flYSEBGJiYrDZbPz666/Mnj0bq9XKzTff7G3z/PPPU7ZsWdasWeOtfdWnTx/uuusuXnnlFW9QKjc/+w0aNKBBgwbexwcOHODZZ5+lRYsW9O7dG4C1a9fy3Xff8eabb6b7eVW9enUmTJjA9u3badiwIbt27eKjjz6iT58+TJgwAfB8n0aPHs3ff/+d7TElJycTExODy+Vi7969vPDCCwDprg/wBKkWL17sDey7XC7efPNN4uPjcxzMFRGR3KPpeyIiIj6SdhN3vvNvpFNTU4mJieG6664DPAGmS/XRqFE
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3XmczPUfB/DXd+5jD3bXfYfIff3IlRK5UyJHdBEqiVKO5CoUkTtqpYhCt0KEREkiki7liiLs2mvume/vj9nvd3fs9d3d2Z3v7L6ej0ePxsxnvvOZ+c7ufr/v7/v9/giiKIogIiIiIiIiIiIqRppQT4CIiIiIiIiIiEofBqWIiIiIiIiIiKjYMShFRERERERERETFjkEpIiIiIiIiIiIqdgxKERERERERERFRsWNQioiIiIiIiIiIih2DUkREREREREREVOwYlCIiIiIiIiIiomLHoBQRERERERERERU7BqWIiIhKoHr16mHWrFmF3s758+dRr149rF69OgizooMHD6JevXo4ePBgqKdCCg0bNgzDhg0L6jaXLl2KevXqBXWbapfdd3/SpEno3Llzsc5D+p324YcfFuvrEhFR9nShngAREVFpsmXLFly9ehUPPvhgqKdS7Pbv34+tW7fip59+wl9//YVKlSph9+7deT7v008/xTPPPAOLxYIff/wxX6958uRJLF26FCdOnMCVK1dgMplQp04dDB8+PM+T4T59+iAlJQV79uyBIAjZjhk0aBDOnTuHr7/+GjodD6ty8uuvv2L16tU4dOgQrl69CovFggYNGqBPnz646667oNVqQz3FoLPb7YiPj0fr1q3Rpk2bUE8HgD8YtmzZMvnfOp0OFSpUQOfOnTF27FhERUWFcHbqcvDgQdx///3yv3U6HSpWrIiWLVviiSeeQLVq1fK9zc6dO6Nu3bpYtWpVMKdKRBTWePRERERUjD777DOcPHmyVAalPvvsM2zduhUNGjRA+fLlFT0nLS0N8+fPh8ViKdBr/vPPP0hLS8Pdd9+N8uXLw263Y8eOHXj00Ucxa9YsDBw4MMfn9unTBwsWLMAPP/yA//3vf1keP3/+PI4ePYqhQ4cyIJWLzZs3Y/r06YiNjUXfvn1Ro0YNpKWl4bvvvsNzzz2Hy5cvY/To0aGeZtDZ7XYsW7YMY8aMyRKUevTRRzFy5MgQzQyYMWMGLBYL7HY7Dhw4gHXr1uHEiRN49913i3UeL7zwAkRRLNbXzK9hw4ahcePG8Hg8+OWXX7Bx40bs3bsXn376KSpUqBDq6RERhT0eQREREVGxGD9+PF544QXo9XqMGjUKJ0+ezPM5r732GqxWK9q0aYNdu3bl+zU7deqETp06Bdw3dOhQ9OvXD2vWrMkzKLVw4UJs2bIl26DU559/DlEU0adPn3zPq7Q4evQopk+fjmbNmuH1119HRESE/NiDDz6I48ePK/oelDQ6nS6kgcxu3bohJiYGgD/bb/z48XIWY5MmTYptHnq9vtheq6BatWqF7t27AwDuuece1KxZEy+++CI+/vhjjBo1KsSzIyIKf+wpRUREFCSpqamYPXs2OnfujEaNGqFt27Z46KGHcOLECQD+K+5fffUVLly4gHr16qFevXoBJWRXr17FlClT0K5dOzRu3Bh33nknPvrooyyv4/P58Pbbb6NPnz5o3Lgxbr75ZgwfPhzHjx/PMvbLL79E79690ahRI/Tq1Qtff/11od+nKIp4/vnn0ahRI+zYsUPx8ypUqJCvk9AzZ87grbfewuTJk4N6Aq/ValGpUiWkpKTkOq5SpUr43//+hy+++AJutzvL45999hmqV6+Opk2b4sKFC5gxYwa6deuGJk2aoE2bNhg7dizOnz+f53w6d+6MSZMmZbk/u15GLpcLS5YsQdeuXdGoUSN06tQJ8+bNg8vlyvU1Zs2ahebNm8Nut2d57KmnnkL79u3h9XoBAMePH8fw4cPRpk0bNGnSBJ07d8bkyZPzfB/ZWbZsGQRBwCuvvBIQkJI0btwY/fr1A5Bzv63segBNmjQJzZs3xz///INRo0ahefPm6NixI9avXw8A+P3333H//fejWbNmuO2227Bly5aAbebU0+nDDz9EvXr1ct1vLpcLixcvRr9+/dCyZUs0a9YMQ4YMwXfffRcw57Zt28qfgfTzvnTp0mxfv3fv3tn2rfL5fOjYsSPGjh0bcN9bb72FXr16oXHjxmjXrh2mTZuGpKSkHOecl1atWgEAzp07F3D/sWPHMHz4cLRs2RJNmzbF0KFDcfjw4YAxhfnuX99TatiwYfJndf1/mfd/cnIyZs+ejU6dOqFRo0bo2rUrXn/9dfh8voDtJycnY9KkSWjZsiVatWqFiRMn5vlzn5ebb74ZAOT3J+3Ls2fPYtKkSWjVqhVatmyJyZMnZ/vzRkREgZgpRUREFCTTp0/HF198gaFDh6J27dq4du0aDh8+jL/++gsNGzbE6NGjkZKSgosXL8on+VarFQDgcDgwbNgwnDt3Dvfddx+qVq2K7du3Y9KkSUhOTsYDDzwgv85zzz2HDz/8ELfccgv69+8Pr9eLH374AceOHUPjxo3lcYcPH8aOHTswZMgQWK1WrFu3DmPHjsWePXtQtmzZAr1Hr9eLKVOmYOvWrVi2bBluvfXWgn9geZgzZw7atGmDTp06Ydu2bYXals1mg8PhQGpqKnbv3o2vv/4aPXr0yPN5ffr0wfPPP4/9+/fjtttuk+///fff8ccff+Dxxx8H4A/k/Pjjj+jVqxcqVqyICxcu4N1338X999+Pzz//HGazuVDzB/zBiEcffRSHDx/Gvffei9q1a+OPP/7A22+/jTNnzmDFihU5Prdnz55Yv349vvrqq4D3bbfbsWfPHtx9993QarW4evUqhg8fjrJly2LkyJGIiorC+fPnsXPnznzP126347vvvkOrVq1QuXLlAr3n3Hi9XjzyyCNo1aoVJkyYgC1btmDWrFkwm8149dVX0adPH9xxxx147733MHHiRDRr1qxAfYCul5qais2bN6N3794YMGAA0tLS8P7772PEiBHYvHkzbrrpJsTExGDGjBmYMWMGunbtiq5duwJAjs3Ne/TogWXLluHy5csoV66cfP/hw4fx33//oWfPnvJ906ZNw0cffYR+/fph2LBhOH/+PNavX49ffvkF7777boGyj6QAS+aeUgcOHMAjjzyCRo0aYcyYMRAEAR9++CEeeOABbNiwQc6oCuZ3f/To0ejfv3/AfZ9++in279+P2NhYAP7v1dChQ3Hp0iUMGjQIlSpVwo8//oiFCxfi8uXLeO655wD4g+ePPfYYDh8+jEGDBqF27drYuXMnJk6cmO/PJzMpcFemTJmA+8eNG4eqVaviqaeewi+//ILNmzcjJiYGzzzzTKFej4iopGNQioiIKEj27t2Le++9NyDr5ZFHHpFvt2/fHmvXrkVycjL69u0b8NyNGzfir7/+wvz583HnnXcC8JfVDBs2DIsWLcI999yDiIgIfPfdd/jwww8xbNgwTJ06VX7+ww8/nKU3y19//YWtW7eievXqAIA2bdqgb9+++PzzzzF06NB8vz+Px4NnnnkGu3fvxmuvvYYOHTrkextKffXVV/jmm2/wySefBGV7L730EjZu3AgA0Gg06Nq1K6ZNm5bn87p164YXXngBn332WUBQ6rPPPgMAuXTv1ltvlUt8JLfddhsGDhyIL774AnfddVeh38OWLVvw7bffYt26dXJmCwDUrVsX06dPx5EjR9CiRYtsn9uyZUtUqFAB27ZtCwhKffXVV7DZbHLQ48cff0RSUhJWr14dEOAcP358vud79uxZuN1u3Hjjjfl+rhJOpxN33nmnXELVp08fdOzYEVOmTMHChQvl99SuXTv06NEDH3/8MZ544olCv250dDR2794Ng8Eg33fvvfeiR48eWLduHebMmQOLxYJu3bphxowZqFevXpaf9+v17NkTS5YskYPakq1bt8JiscjB3x9++AGbN2/GK6+8ElA22qZNG4wYMQLbt29XVE4qZVVJgcMNGzYgJiZGLlMVRREzZsxAmzZtEB8fLzf6HzRoEHr16oV
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA/SVJREFUeJzs3Xd4U2Ubx/HvyexklDJkT0EZgiKIgiivIsMFojjABSIiAorgVkARREEQENACCu6BG1BEURQXTsSFsmRKWd3Z7x9p0paudKSL3+e6epEmzznnSXJCkzv3fT+Gz+fzISIiIiIiIiIiUoZM5T0BERERERERERE5/igoJSIiIiIiIiIiZU5BKRERERERERERKXMKSomIiIiIiIiISJlTUEpERERERERERMqcglIiIiIiIiIiIlLmFJQSEREREREREZEyp6CUiIiIiIiIiIiUOQWlRERERERERESkzCkoJSIicpxo3bo1U6ZMKfF+du3aRevWrVm8eHEpzKrq6tWrF3fffXd5T0NCtGLFClq3bs2uXbtKbZ+B18qKFStKbZ+VwbHn/jfffEPr1q355ptvynQeQ4cOZejQoWV6TBERKRoFpURERMrZe++9x3PPPVfe0ygXQ4cOpXXr1rl+hg0bVuR9PfroowwYMIAuXbpwyimn0LdvX+bOnUtqamqB2y1dupTWrVuzYcOGfMe89tprtG7dmrVr1xZ5XseTlJQU5s2bx8UXX0ynTp3o0KEDF154IY8//jj79+8v7+mFTUV7DQeCYYGfNm3a0KVLF4YPH86PP/5Y3tOrcHr16pXj8erWrRtXX301a9asKdb+5s6dS+vWrTl06FApz1REpOqxlPcEREREjnfvv/8+W7Zs4frrry/vqZSLevXqcccdd+S4rk6dOkXez6ZNmzjttNMYOHAgdrud3377jWeeeYYNGzbw4osvYjLl/V1cv379mDFjBu+99x5nnnlmnmPee+89atSowdlnn13keR0v/v33X66//nr27t1Lnz59GDx4MFarlT///JM33niDjz/+mA8//LC8pxkW+b2GGzRowC+//ILFUj5vuS+88ELOPvtsvF4v27dv56WXXuLaa6/ljTfeoHXr1mU2j9NPP51ffvkFq9VaZscsqpNOOokbbrgBgP/++49XX32V0aNHM2nSJK666qpynp2ISNWloJSIiIiUq9jYWC655JIS7+fll1/OdV3jxo157LHH+OWXX+jYsWOe29WtW5euXbuyZs0aJk+ejM1my3H7/v372bhxI1dccUWF/lBdntxuN6NHj+bgwYMsW7aMzp0757j99ttv59lnny2n2ZUfwzCw2+3ldvyTTz45x2vrtNNO46abbuLll19m0qRJZTYPk8lUro9DKOrWrZvjsbr00kvp3bs3zz33nIJSIiJhpPI9ERGRMEpJSWHq1Kn06tWLdu3a0a1bN2644QY2b94M+MvX1q1bx+7du4OlI7169Qpuf/DgQe69917OPPNM2rdvz8UXX8xbb72V6zher5fnn3+eiy66iPbt23PGGWcwbNgwNm3alGvsxx9/zIUXXki7du3o378/n3/+eYnvp8/n44EHHqBdu3Z89NFHRd7e7XYXWmZXHA0aNAAgKSmpwHEXX3wxycnJrFu3LtdtH3zwAV6vl4suugiAxYsXc+WVV9K1a1c6dOjAwIEDWb16daFzCZT0HCu/XkafffYZV199NR07dqRTp06MGDGCLVu2FHiMTZs20bp16zzPkfXr19O6dWs+/fRToPBzsyg++ugj/vjjD0aOHJkrIAUQExPD7bffHvw9v35bx/YACvQiWrlyJfPmzaNHjx506tSJMWPGkJycjNPpZOrUqXTr1o1OnTpxzz334HQ6g9sX1NOpdevWzJ07t8D79fHHHzNixAi6d+9Ou3btOO+885g/fz4ejyfHnPN7DR97/MWLF9O6dWt2796d61gzZ86kXbt2HD16NHjdzz//zLBhwzjttNM45ZRTGDJkCN9//32Bcy5I4Ln5999/c1yflJTE1KlT6dmzJ+3ateP888/nmWeewev15hhX3HP/2J5SgXM+r59je0C98847DBw4kA4dOtClSxduv/129u7dm+sYr776Kueddx4dOnRg0KBBbNy4sUiPzbFq165N8+bNg89V9l56gWO1a9eOyy67jF9++aVExxIROZ4pU0pERCSMHnroIT788EOGDBlCixYtOHLkCN9//z3//PMPbdu2ZeTIkSQnJ7Nv3z7uueceAKKjowHIyMhg6NCh7Ny5k2uuuYaGDRuyevVq7r77bpKSkrjuuuuCx7nvvvtYsWIFZ599NoMGDcLj8bBx40Z+/vln2rdvHxz3/fff89FHH3H11VcTHR3N8uXLGTNmDJ9++ik1a9Ys1n30eDzce++9wcDBOeecU6Ttt2/fTseOHXG5XMTHx3P55Zdz6623Fisrye12k5SUhMvlYsuWLcyePZvo6Gg6dOhQ4Ha9e/dm0qRJvP/++/Tu3TvHbe+//z4NGjTgtNNOA2DZsmX06tWLiy66CJfLxQcffMDYsWNZtGhRke97ft5++23uvvtuunfvzp133kl6ejovv/wyV199NW+99RYNGzbMc7v27dvTqFEjVq1axYABA3LctnLlSqpXr0737t2Bws/Nogj02iqNjLe8PPPMM0RERDBixAh27NjBCy+8gMViwTAMkpKSGD16ND///DMrVqygQYMGjB49ulSO+9ZbbxEVFcUNN9xAVFQUX3/9NU899RQpKSncddddAAW+ho/Vt29fHn/8cVatWsXw4cNz3LZq1SrOOussqlevDsBXX33FTTfdRLt27Rg9ejSGYbBixQquu+46XnrppULP6bwEAizVqlULXpeens6QIUPYv38/V155JSeccAI//vgjs2bN4sCBA9x3333BsaV17p9++unMmDEjx3V79uxh9uzZxMXFBa9bsGABc+bMoW/fvgwaNIhDhw7xwgsvcM011/D2228H78frr7/Ogw8+SKdOnbjuuuv4999/ueWWW6hevTonnHBCkR8nAJfLxb59+6hRo0aO699//31SU1MZPHgwhmGQkJDAbbfdxscff6xMShGRYlBQSkREJIw+++wzrrjiihxZITfddFPw8llnncWyZctISkrK9YH+1Vdf5Z9//uHxxx/n4osvBuDKK69k6NChzJ49m8suu4yYmBi+/vprVqxYwdChQ7n//vuD29944434fL4c+/znn39YuXIljRs3BqBr165ccsklfPDBBwwZMqTI98/tdjNhwgQ++eQTFixYEAx4hKpRo0Z07dqVE088kbS0ND788EMWLFjA9u3bmT17dpHn8+uvvzJ48ODg782aNWPBggW5PlgeKyYmhnPPPZdPP/2UlJQUYmJiANi6dSubN2/m5ptvxjAMAD788EMiIiKC215zzTUMHDiQpUuXlkpQKjU1lalTp3L55Zfz8MMPB68fMGAAffr0YdGiRTmuP1a/fv1YsmQJR48eDQY4nE4nH3/8Meeff37wg3Nh52ZRbN26ldjY2GIHAArj8XhYvnx5cO6HDx/mgw8+oEePHsGywGuuuYadO3eyYsWKUgtKzZw5M8dzfdVVV/Hggw/y8ssvc/vtt2Oz2Qp8DR+rfv36dOzYkZUrV+YISv3yyy/8+++/wXn7fD4mTZpE165dSUhICJ57V155Jf3792f27NksWbKk0Pmnp6dz6NChYE+p6dOnA3DBBRcExyxdupR///2Xt956i6ZNmwaPU6dOHRYvXsyNN94YfF5L69xv1KgRjRo1Cv7ucDi46qqrqFOnTvD/sN27dzN37lzGjRvHyJEjg2N79+7NgAEDeOmllxg5ciQul4snn3ySk046iWXLlgXLb1u2bMkDDzwQ8jnpdruDjcn/++8/nnnmGRITE3Nlbu3Zs4ePPvoo+Npq1qwZo0aN4osvvuDcc88N+TEQERE/le+JiIiEUbVq1fj555+LtfLY559/Tu3atbnwwguD11mtVoYOHUpaWhrfffcd4C+dMgwjzw/igQ+zAWeeeWYwIAXQpk0bYmJicpXzhMLlcjF27FjWrVvHM888U+S
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4FOXaBvB7ys6WNEhCkY6goICiICoeQLGiYj12sHexN+xYjoWDHY8N+/HYUQ+KoAcb9o5+ih2pgkCAJNtmp3x/bGaSkLa72c3uzNy/6/JySd7svsnszM488zzPK5imaYKIiIiIiIiIiKgDifmeABEREREREREReQ+DUkRERERERERE1OEYlCIiIiIiIiIiog7HoBQREREREREREXU4BqWIiIiIiIiIiKjDMShFREREREREREQdjkEpIiIiIiIiIiLqcAxKERERERERERFRh2NQioiIiIiIiIiIOhyDUkRERC0YNGgQbrjhhnY/z4oVKzBo0CA88sgjWZgVffrppxg0aBA+/fTTfE+FUjR58mRMnjw5q8957733YtCgQVl9zkLX3Ht/6tSpGD9+fIfOwzqmzZ49u0Nfl4iI3EfO9wSIiIjSNWfOHKxfvx4nnnhivqfSoaLRKGbPno0FCxbg559/RjgcRt++fXHkkUfiqKOOgiRJjcbff//9WLRoEb799lusX78eU6ZMwbnnnpv2665YsQJ77rlns9+74447cMABB7T4sxMnTkRNTQ3eeecdCILQ7Jijjz4ay5Ytw/vvvw9Z5qlJSxYvXoxHHnkEn3/+OdavX49QKIRtt90WEydOxCGHHNJk+7tBNBrFrFmzMGrUKOy88875ng6AZDBs5syZ9r9lWUa3bt0wfvx4nHfeeSgtLc3j7ArLp59+iuOPP97+tyzL6N69O0aMGIFzzz0XvXv3Tvs5x48fj6222goPPvhgNqdKRER5wjM/IiJynNdeew2//PKL54JSy5cvx4033ohdd90VJ554IoqLi/HBBx/g+uuvx6JFi3Dbbbc1Gn/XXXehS5cu2GabbfDBBx+0+/UPPPBAjB07ttHXhg8f3urPTJw4Ebfffju++OIL7LTTTk2+v2LFCnzzzTeYNGkSA1KteOGFF3DdddehoqICBx98MPr27YtwOIxPPvkEV111FdauXYszzzwz39PMumg0ipkzZ2LKlClNglJnnXUWTj/99DzNDJg2bRpCoRCi0Sg+/vhjPPXUU/j+++/xzDPPdOg8brzxRpim2aGvma7Jkydj2LBh0DQNP/zwA5577jm89957+O9//4tu3brle3pERJRHPPsjIiJyiMrKSsyZMwdbbbWV/bWjjz4aV1xxBWbPno2zzz4bffv2tb+3YMEC9OrVC1VVVdh1113b/frbbrstDj744LR+ZuLEibjjjjswZ86cZoNSr7/+OkzTxMSJE9s9P7f65ptvcN1112H48OF46KGHUFxcbH/vxBNPxHfffYdffvkljzPMD1mW8xrI3HfffVFeXg4guR9eeOGFmDt3Lr799ltst912HTYPn8/XYa+VqZEjR2K//fYDABx++OHo168fbrrpJrzyyis444wz8jw7IiLKJ/aUIiKiglJbW4t//OMfGD9+PIYOHYpdd90VJ510Er7//nsAyTvu7777LlauXIlBgwZh0KBBjfqprF+/HldeeSVGjx6NYcOG4aCDDsLLL7/c5HUMw8ATTzyBiRMnYtiwYdhll11wyimn4Lvvvmsy9n//+x8OPPBADB06FAcccADef//9dv+epmnimmuuwdChQ/Hmm2+m9DPl5eWNAlKWvffeGwDw22+/Nfp6r1692j3PzUUiEaiqmvL4LbbYAjvttBPmz5+PRCLR5PuvvfYa+vTpg+233x4rV67EtGnTsO+++2K77bbDzjvvjPPOOw8rVqxo83XGjx+PqVOnNvl6c72MVFXFPffcg7333htDhw7FuHHjMH369DZ/rxtuuAE77LADotFok+9ddNFF2G233aDrOgDgu+++wymnnIKdd94Z2223HcaPH48rrriizd+jOTNnzoQgCJgxY0ajgJRl2LBhOOywwwC03G+ruR5AU6dOxQ477IBVq1bhjDPOwA477IAxY8bg6aefBgD89NNPOP744zF8+HDssccemDNnTqPnbKmn0+zZszFo0KBWt5uqqrj77rtx2GGHYcSIERg+fDiOPfZYfPLJJ43mbAVTZ86cae/v9957b7Ovf+CBBzbbt8owDIwZMwbnnXdeo689/vjjOOCAAzBs2DCMHj0a1157LTZt2tTinNsycuRIAMCyZcsafX3RokU45ZRTMGLECGy//faYNGkSvvzyy0Zj2vPe37yn1OTJk+2/1eb/Ndz+1dXV+Mc//oFx48Zh6NCh2HvvvfHQQw/BMIxGz19dXY2pU6dixIgRGDlyJC6//HLU1NSk/fdpaJdddgEA+/eztuXSpUsxdepUjBw5EiNGjMAVV1zR7P5GRETuwUwpIiIqKNdddx3mz5+PSZMmYcCAAdi4cSO+/PJL/PbbbxgyZAjOPPNM1NTUYPXq1fZFflFREQAgFoth8uTJWLZsGY477jj06tUL8+bNw9SpU1FdXY0TTjjBfp2rrroKs2fPxtixY/H3v/8duq7jiy++wKJFizBs2DB73Jdffok333wTxx57LIqKivDUU0/hvPPOwzvvvIPOnTtn9Dvquo4rr7wSc+fOxcyZM7H77rtn/gcDsG7dOgDIeD6pmjlzJqZPnw5BEDBkyBBceOGF+Nvf/tbmz02cOBHXXHMNPvjgA+yxxx7213/66Sf8/PPPOOeccwAkAzlff/01DjjgAHTv3h0rV67EM888g+OPPx6vv/46gsFgu38HwzBw1lln4csvv8SRRx6JAQMG4Oeff8YTTzyBP/74A//6179a/Nn9998fTz/9NN59911MmDDB/no0GsU777yDQw89FJIkYf369TjllFPQuXNnnH766SgtLcWKFSvw1ltvpT3faDSKTz75BCNHjkSPHj0y+p1bo+s6TjvtNIwcORKXXHIJ5syZgxtuuAHBYBB33nknJk6ciH322QfPPvssLr/8cgwfPjyjPkCbq62txQsvvIADDzwQRxxxBMLhMF588UWceuqpeOGFF7DNNtugvLwc06ZNw7Rp07D33nvbwdeWmptPmDABM2fOxNq1a9GlSxf7619++SX++usv7L///vbXrr32Wrz88ss47LDDMHnyZKxYsQJPP/00fvjhBzzzzDMZZR9ZAZaGPaU+/vhjnHbaaRg6dCimTJkCQRAwe/ZsnHDCCfjPf/5jZ1Rl871/5pln4u9//3ujr/33v//FBx98gIqKCgDJ99WkSZOwZs0aHH300dhiiy3w9ddf44477sDatWtx1VVXAUgGz88++2x8+eWXOProozFgwAC89dZbuPzyy9P++zRkBe46derU6OsXXHABevXqhYsuugg//PADXnjhBZSXl+PSSy9t1+sREVHhYlCKiIgKynvvvYcjjzyyUdbLaaedZj/ebbfd8OSTT6K6urpJKdlzzz2H3377Df/85z9x0EEHAUiW1UyePBl33XUXDj/8cBQXF+OTTz7B7NmzMXnyZFx99dX2z5988slNerP89ttvmDt3Lvr06QMA2HnnnXHwwQfj9ddfx6RJk9L+/TRNw6WXXoq3334b999/f0pBndaoqoonnngCvXr1ahRMyyZRFPG3v/0Ne+21F7p164bly5fj8ccfx2mnnYb777+/zaDavvvuixtvvBGvvfZao6DUa6+9BgB26d7uu+9ul/hY9thjDxx11FGYP38+DjnkkHb/LnPmzMFHH32Ep556ys5sAYCtttoK1113Hb766ivsuOOOzf7siBEj0K1bN7zxxhuNglLvvvsuIpGIHfT4+uuvsWnTJjzyyCONtsmFF16Y9nyXLl2KRCKBrbfeOu2fTUU8HsdBBx1kl1BNnDgRY8aMwZVXXok77rjD/p1Gjx6NCRMm4JVXXsmoWf7mysrK8Pbbb0NRFPtrRx55JCZMmICnnnoKN998M0KhEPbdd19MmzYNgwYNarN0dP/998c999xjB7U
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4FGXXBvB7tqdCCp0QOkgXkN4FpaogCCJNmihFUKQqXZqIgIgUaSL9VVSkfzRBFEVEULpA6KGTun2+PyazyaZuNmXb/bsuLrY8O/vszmQzOXvOeQRRFEUQERERERERERHlI4WrJ0BERERERERERL6HQSkiIiIiIiIiIsp3DEoREREREREREVG+Y1CKiIiIiIiIiIjyHYNSRERERERERESU7xiUIiIiIiIiIiKifMegFBERERERERER5TsGpYiIiIiIiIiIKN8xKEVERERERERERPmOQSkiIiLyKcePH0elSpVw/PhxV0+FHNS7d2/07t07V7f5+eefo1KlSrm6TXeX3rE/btw4tGrVKl/ncfPmTVSqVAnfffddvj4vERG5H5WrJ0BERETe7ebNm3j++efTvW/+/Pno0KFDho/t1KkTYmNjcfDgQQiCkO6YHj164Pr16/j555+hUvHUJiPnzp3DypUr8ccff+Dhw4fw9/dHlSpV0KlTJ7zyyitQKpWunmKuS0xMxFdffYV69eqhfv36rp4OACkYtnjxYtt1lUqFIkWKoFWrVhgxYgSCg4NdODv3cvz4cfTp08d2XaVSoWjRoqhTpw6GDx+OiIiIbG+zVatWqFChApYtW5abUyUiIifxzI2IiIjyRceOHdGsWTO722rVqpXpYzp16oRPP/0UJ06cwHPPPZfm/ps3b+LUqVPo1asXA1KZ2Lp1KyZPnoywsDC8/PLLiIyMRHx8PH777TdMnDgR9+/fx5AhQ1w9zVyXmJiIxYsXY9iwYWmCUm+//TYGDx7sopkBU6ZMgb+/PxITE/Hrr79i3bp1+Pfff7Fx48Z8ncf06dMhimK+Pmd29e7dG9WrV4fZbMbZs2exefNmHD58GD/++COKFCni6ukREVEO8OyNiIjIhyQkJMDf398lz12lShW8/PLL2XpMp06dMH/+fGzfvj3doNSOHTsgiiI6deqUW9P0OqdOncLkyZNRq1YtLF++HIGBgbb7+vXrhzNnzuDSpUsunKFrqFQqlwYyX3zxRYSGhgKQsv1GjRqFnTt34vTp06hRo0a+zUOtVufbczmrbt26aNu2LQDg1VdfRenSpTFjxgx8//33eOutt1w8OyIiygn2lCIiIvJScs+cy5cv4/3338dzzz2Hnj17AgDMZjO++OILtG7dGtWqVUOrVq0wf/58GI3GNNs5fPgwevXqhWeffRa1a9fGq6++iu3btzs1p4SEhHSfIyPFihXDc889hz179sBkMqW5/6effkKpUqVQs2ZN3Lp1C1OmTMGLL76IGjVqoH79+hgxYgRu3ryZ5fO0atUK48aNS3N7er2MjEYjFi1ahDZt2qBatWpo3rw55s6dm+XrmjZtGp599lkkJiamue+9995D48aNYbFYAABnzpzBgAEDUL9+fdSoUQOtWrXC+PHjs3wd6Vm8eDEEQcC8efPsAlKy6tWro0uXLgAy7reVXg+gcePG4dlnn8Xt27fx1ltv4dlnn0XTpk2xfv16AMCFCxfQp08f1KpVCy1btkxzzGTU0+m7775DpUqVMt1vRqMRCxcuRJcuXVCnTh3UqlULPXv2xG+//WY354YNG9reg0qVKqFSpUr4/PPP033+jh07ptu3ymq1omnTphgxYoTdbWvWrEGHDh1QvXp1NGrUCJMmTcLTp08znHNW6tatCwC4fv263e1///03BgwYgDp16qBmzZro1asX/vzzT7sxOTn2U/eU6t27t+29Sv0v5f6PiYnBxx9/jObNm6NatWpo06YNli9fDqvVarf9mJgYjBs3DnXq1EHdunUxduxYxMbGZvv9SalBgwYAYHt98r6MiorCuHHjULduXdSpUwfjx49P9+eNiIjcBzOliIiIvNy7776LyMhIjBo1ylam8+GHH2Lbtm148cUX8eabb+L06dNYtmwZ/vvvP3zxxRe2x3733XeYMGECKlSogLfeegtBQUE4d+4cjhw5ku3spMWLF2Pu3LkQBAFVq1bFqFGj0KRJkywf16lTJ3z00Uc4evQoWrZsabv9woULuHjxIoYOHQpACuT89ddf6NChA4oWLYpbt25h48aN6NOnD3bs2AE/P79szTc9VqsVb7/9Nv7880+89tprKFeuHC5evIi1a9fi2rVrWLJkSYaPbd++PdavX49Dhw6hXbt2ttsTExNx8OBBdO7cGUqlEg8fPsSAAQMQEhKCwYMHIzg4GDdv3sS+ffuyPd/ExET89ttvqFu3LooXL+7Ua86MxWLBoEGDULduXYwePRrbt2/HtGnT4Ofnh88++wydOnXCCy+8gE2bNmHs2LGoVauWU32AUouLi8PWrVvRsWNHdOvWDfHx8fjf//6HgQMHYuvWrXjmmWcQGhqKKVOmYMqUKWjTpg3atGkDABk2N2/Xrh0WL16M+/fvo1ChQrbb//zzT9y7dw/t27e33TZp0iRs27YNXbp0Qe/evXHz5k2sX78eZ8+excaNG53KPpIDLCl7Sv36668YNGgQqlWrhmHDhkEQBHz33Xfo27cvNmzYYMuoys1jf8iQIejatavdbT/++COOHj2KsLAwANJx1atXL0RHR6NHjx4oVqwY/vrrL8yfPx/379/HxIkTAQCiKOKdd97Bn3/+iR49eqBcuXLYt28fxo4dm+33JyU5cFewYEG720eOHImSJUvivffew9mzZ7F161aEhobigw8+yNHzERFR3mFQioiIyMtVrlwZn376qe36+fPnsW3bNnTr1g0zZswAALzxxhsIDQ3FqlWr8Ntvv6FBgwaIjY3FjBkzUKNGDaxbtw5arda2jez0oFEoFGjSpAlat26NIkWK4MaNG1izZg0GDRqEL7/8Ei1atMj08S+++CKmT5+On376yS4o9dNPPwGALTjWokULW4mPrGXLlujevTv27NmDV155xeE5Z2T79u04duwY1q1bZ8tsAYAKFSpg8uTJOHnyJGrXrp3uY+vUqYMiRYpg165ddkGpQ4cOISEhwRb0+Ouvv/D06VOsXLkS1atXt40bNWpUtucbFRUFk8mEihUrZvuxjjAYDHjppZdsJVSdOnVC06ZNMWHCBMyfP9/2mho1aoR27drh+++/x/Dhw3P8vAUKFMCBAweg0Whst7322mto164d1q1bh5kzZ8Lf3x8vvvgipkyZgkqVKmVZOtq+fXssWrQIe/bsQa9evWy379y5E/7+/rbj9MSJE9i6dSvmzZtnF5itX78+Bg4ciN27dzsUsJWzquTA4YYNGxAaGmorUxVFEVOmTEH9+vXx1Vdf2Rr99+jRAx06dMCCBQuwatUqALl77Ddu3Nju+smTJ3H8+HG8+uqraN68OQBg9erVuHHjBrZt24bSpUvb5lW4cGGsXLkS/fv3R7FixbB//3788ccf+OCDDzBw4EAAwOuvv27XvNwR8fHxePToEcxmM86dO4ePP/4YgiDghRdesBv3zDPPYObMmbbrT548wf/+9z8GpYiI3BjL94iIiLxcjx497K4fPnwYAPDmm2/a3d6/f3+7+3/55RfEx8dj8ODBdgEpABmuhJee4sWLY+XKlXj99dfRqlUr9O3bF9u2bUNoaChmz56d5eMLFCiA5s2b48CBA0hISAAg/cG+Y8cOVKtWDWXKlAEA6HQ622NMJhMeP36MUqVKITg4GGfPnnV4vpnZvXs3ypUrh7Jly+LRo0e2f3I5Ueqyt5QEQUDbtm1x+PBhxMfH227ftWsXihQpgjp16gAAgoKCAEjBqvRKFrMjLi4OABAQEJCj7WSmW7dutsvBwcEoU6YM/Pz87AJvZcuWRXBwMG7cuJErz6lUKm0BKavViidPnsBsNqNatWpO7+syZcrgmWeewc6dO223WSwW7NmzB61atbIdX7t370ZQUBAaN25sdwxUrVoV/v7+mR4
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA8WRJREFUeJzs3Xd4U2UbBvD7ZHfTxS57b5A9RJZs/ECG7D2UKSBLREQUQUCmgJYtWwREpiIKKAgoAiIgyEZaRgud2ef7I82hpSulJSdJ7991cXmavDnnSd7WnDx53ucIoiiKICIiIiIiIiIiciKF3AEQEREREREREVHuw6QUERERERERERE5HZNSRERERERERETkdExKERERERERERGR0zEpRURERERERERETsekFBEREREREREROR2TUkRERERERERE5HRMShERERERERERkdMxKUVERERERERERE7HpBQRERHlWpMmTULTpk3lDoMcdOfOHZQtWxbffPNNju63adOmmDRpUo7u09Wl9btftmxZLF682KlxLF68GGXLlnXqMYmIyHUwKUVERETZtmzZMgwbNgz169fP9INtZGQkRo8ejZo1a6JGjRp48803cfv27Qz3f+HCBZQtWxafffZZumNu3LiBsmXLYtasWc/9PHIDi8WC7du3o3fv3qhduzYqVaqEpk2bYvLkyTh//rzc4b0wf/zxBxYvXoyYmBi5Q5E0bdoUZcuWlf5Vq1YNnTt3xs6dO+UOzeVMmjQpxWtVo0YNdOjQAatWrYLRaMzy/n777TeULVsW+/fvfwHREhGRo1RyB0BERETub8GCBQgNDUX58uVx7NixdMfFx8ejT58+iI2NxdChQ6FWq7FmzRr06tULO3fuRGBgYJqPq1ixIkqUKIE9e/bg7bffTnPMd999BwDo0KFD9p+Qh9Lr9RgxYgSOHj2KWrVqYejQoQgICMDdu3exb98+7NixAz/99BPy588vd6g57syZM1iyZAk6duwIf3//FPft378fgiDIElf58uXRv39/AMCDBw+wbds2TJw4EUajEV27dnVqLOfOnYNSqXTqMbNCo9Fg5syZAIDY2FgcOHAAs2fPxvnz5zNMWBMRketiUoqIiMiDJCQkwNvb2+nHPXToEAoXLoyoqCjUq1cv3XEbN27EjRs3sG3bNlSpUgUA0KhRI7Rv3x6rV6/G2LFj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
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "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BEY///xz9O/fH71798bq1avx8ssvIz4+HosXL8aoUaOwfPnyXHneX375BZcuXUKnTp1QsGBBnD59GuvXr8eZM2ewfv16CIKA1q1b4/z58/j+++8xcuRIREREAECG2XrVqlVDyZIlsW3bNnTs2NHtvq1btyI8PBxNmjQBAMTExODFF1+EIAh45ZVXEBkZiX379uGDDz5AUlJShsG/B3E4HLhx4wbCw8Pdbh8zZgw2btyITp06KYG9VatW4Z9//sGaNWug1+sB5N7vfmRkpBLIu3tuH3/8sfJcAHDw4EH06dMHVatWxcCBAyEIAr755hu89tprWL16NapXrw4AOHXqFHr16oXIyEgMGjQIDocDc+bMQVRUVLbfo7tdunQJAFCgQAHltgsXLuDtt99G586d0bFjR2zYsAEjRozAY489hooVKz7U8xERUe5iUIqIiEjlqlSpgunTpys/nzx5Ehs3bkSXLl2U/ivyF+alS5fi119/RYMGDZCYmIiJEyeievXqWLFihVvpTnYymLIjLCwM3bt3R82aNWEwGHD48GGsXr0aJ06cwIYNGxASEpLl4zt06IAJEybg4MGDSmBAFEVs3boVtWrVQsmSJQEA06dPh8lkUh730ksvYcyYMVizZg3eeeedXCnXmjRpEooWLYoNGzYo+3v55Zfx0ksvYdq0aZkGpQCgXbt22LBhA37++Wc0b95cuX3r1q0oWbKk0vh9z549qFixImbPnv3Q8/3vv/8AIM9WOjt37hy2bdumZM2Fh4djzJgxWLBgAbZv367824qiiEWLFuHy5cs5yrC718svv4yePXu63VazZk0MHToUf/zxB+rUqYMqVarg0Ucfxffff49WrVo98HnbtWuHpUuXIj4+XgkO2Ww2/Pjjj2jdurUSlPnss8/gdDqxefNmJdD10ksvYejQoZg7dy66devm9nuYEYfDgdjYWACuINfixYtx69YtvPLKK8qYw4cP4+uvv8a0adPcgpH169dH7969sX37duX23PrdN5vNbqVyADB+/HikpKRg6dKlAFx/J8aNG4f69etj8eLFSl+ubt26oX379pg5c6Yydvbs2ZAkCatWrUKxYsUAuMp4sxtcld+rpKQkbNu2DT/++CMqV66McuXKKWPOnTuHVatWoU6dOgCAtm3bolmzZvjmm29yLShNRES5g+V7REREKtetWze3n/fu3QsASvNkmfzFXb7/559/RnJyMvr27XtfL5m8avr82muv4cMPP0SHDh3w9NNP44MPPsCUKVNw/vx5rF69+oGPb9euHfR6vVsJ36FDh3Djxg23L7d3fylPSkpCbGws6tSpg9TUVJw9e/ahX8edO3fw66+/om3btsr+Y2NjERcXhyZNmuD8+fO4ceNGpo9v0KABIiIisHXrVuW2+Ph4/PLLL0qWFOAK4l2/fh3Hjx9/6DknJSUBAIKDgx96Xxlp2LChW7CnRo0aAICnnnrKLdgoZ87IGS4P6+5/a6vVitjYWOW5//777xzts127drDb7di5c6dy288//4yEhATl30eSJOzcuRMtWrSAJEnK70BsbCyaNGmCxMREj57/wIEDaNiwIRo2bIgOHTrg22+/RadOnfDee+8pY7Zv347Q0FA0btzY7Xkee+wxmM1mt3LTvPrd37RpE1avXo13330XDRo0AAD8+++
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKYAAAKyCAYAAADvidZRAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd0FGUXBvBntmfTSKNJ6E0hIEiRJkpRqgqCFMFGl1AEpIk0AQHpRUSjIEhXUVGqSFUQERBU4APpCIEQIHXrzPfHZidZ0jYhybbndw7nTGbfnXk3TLbcvfe+giRJEoiIiIiIiIiIiIqYwtUTICIiIiIiIiIi38TAFBERERERERERuQQDU0RERERERERE5BIMTBERERERERERkUswMEVERERERERERC7BwBQREREREREREbkEA1NEREREREREROQSDEwREREREREREZFLMDBFREREREREREQuwcAUERER+ayxY8eiRYsWrp4GOenatWuoVq0avvnmmwI9bosWLTB27NgCPaa7y+rar1atGhYvXlyk81i8eDGqVatWpOckIiL3wsAUERERPZR///0Xs2fPxgsvvIA6deqgadOm6N+/P06dOpXl+NjYWAwbNgz16tVD3bp1MWjQIFy9ejXHc/z999+oVq0a5s+fn+2YS5cuoVq1avjggw8e6vF4O6vViq+//hq9e/dGgwYNULNmTbRo0QLjxo3L9v/MGxw7dgyLFy9GQkKCq6cia9GiBapVqyb/e/zxx9GlSxd8++23rp6a2xk7dqzD76pu3bp4/vnn8fnnn8NkMuX5eL/99huqVauG7du3F8JsiYgoL1SungARERF5tq+++gpfffUVnn32WfTs2ROJiYnYsGEDunXrhpiYGDRu3Fgem5ycjFdffRWJiYkYMGAA1Go1Vq5ciV69euHbb79FSEhIlueoUaMGKlasiB9//BFvv/12lmN++OEHAMDzzz9f8A/SSxgMBkRHR+PAgQOoX78+BgwYgODgYFy/fh3btm3D5s2bsXfvXpQsWdLVUy1wx48fx5IlS9CpUycEBQU53LZ9+3YIguCSeT366KN44403AAC3b9/Gpk2bMGbMGJhMJrz88stFOpeTJ09CqVQW6TnzQqPRYNq0aQCAxMRE7NixA7NmzcKpU6dyDFoTEZF7Y2CKiIjIi6SkpECv1xfpOdu3b4/o6Gj4+/vL+1566SW0a9cOixcvdghMrV27FpcuXcKmTZtQq1YtAECzZs3QsWNHrFixAiNGjMj2PB07dsTChQtx4sQJPP7445lu/+GHH1CxYkXUqFGj4B6cl5k9ezYOHDiAcePG4fXXX3e4LTo6GitXrnTJvFxNo9G47NwlSpTACy+8IP/cuXNntGzZEitXrizywJRWqy3S8+WVSqVy+F317NkTXbt2xdatWzF27FiUKFHChbMjIqL8YikfERGRh7L3Zjl//jxGjhyJ+vXro2fPngAAi8WCpUuXolWrVnKp1rx587Isedm3bx969eqFOnXqoG7dunjppZewZcsWp+dRs2ZNh6AUAISEhKBevXq4cOGCw/4dO3YgKipKDkoBQKVKldCoUSNs27Ytx/N07NgRQHpmVEZ//fUXLl68KI/56aef0L9/fzRt2hQ1a9ZEq1atsHTpUlit1hzPYS/v+e233xz2Z9fb6N9//8XQoUPRoEEDREVFoXPnzti9e3eO5zCbzWjQoAHGjRuX6bakpCRERUVh1qxZ8r7Vq1ejffv2qF27NurXr4/OnTvn6f/H7ubNm9iwYQOaNGmSKSgFAEqlEn369JGzpbLrv5VVT6Bq1aph6tSp2LZtG9q1a4datWqhW7duOHv2LABg/fr1aN26NaKiotC7d29cu3bN4f7Z9Xjq3bs3evfunePjOnPmDMaOHYuWLVsiKioKTZo0wbhx43D37l2HOc+ePRsA0LJlS7kczD6PjOc/deoUqlWrhs2bN2c614EDB1CtWjXs2bNH3hcbG4tx48ahcePGqFmzJtq3b4+vvvoqxznnJDQ0FBUrVsSVK1cc9ouiiJUrV6J9+/aIiopC48aNMXHiRNy/f99hXH6vfcCxx5T9ms/uX0Z//vkn+vTpgyeeeAK1a9dGr1698Mcff2Q6/tGjR/HSSy8hKioKrVq1wvr16/P663GgUCjQoEEDAMD169cB2P4vBwwYgKNHj6JLly6IiopCy5YtWR5JROTGmDFFRETk4YYNG4Zy5crh7bffhiRJAIAJEyZg8+bNeO655/DGG2/g5MmTWL58Of79918sXbpUvu8333yD8ePHo0qVKhgwYAACAwNx+vRpHDhwQA7y5Nft27dRrFgx+WdRFHH27Fm89NJLmcZGRUXh4MGDSEpKQkBAQJbHi4yMRJ06dbBt2zaMGzfOoeTIHqyyz3nz5s3Q6/V44403oNfrcfjwYSxatAhJSUkYM2bMQz0uu3PnzqFHjx4oUaIE+vXrB71ej23btmHw4MFYvHgxWrduneX91Go1WrVqhV27dmHKlCkO2To//fQTTCYT2rVrBwDYuHEjpk2bhueeew6vvvoqjEYjzp49iz///DPP/z/79++HxWIptFLHo0eP4ueff5aDo5988gkGDhyIvn37Yu3atejZsyfu37+PmJgYjB8/HqtWrSqQ8/7666+4evUqOnfujIiICJw7dw4bN27E+fPnsXHjRgiCgNatW+PSpUv44YcfMG7cOLlkNDQ0NNPxoqKiEBkZiW3btqFTp04Ot23duhXBwcFo2rQpACAuLg4vv/wyBEHAK6+8gtDQUOzfvx/vvvsukpKSsgwA5sZisSA2NhbBwcEO+ydOnIjNmzejc+fOcnBvzZo1+Oeff7Bu3Tqo1WoABXfth4aGysG8jHP74IMP5HMBwKFDh9CvXz/UrFkT0dHREAQB33zzDV577TWsXbtWDkKfPXsWffr0QWhoKIYMGQKLxYLFixcjLCwsz7+jjOz96TI+11y+fBnDhg1Dly5d0KlTJ3z99dcYO3YsatSogSpVqjzU+YiIqOAxMEVEROThqlevjrlz58o/nzlzBps3b0bXrl3lfiz2D82ff/45Dh8+jCeffBKJiYmYNm0aatWqhdWrVzuU8dgDXPl19OhRnDhxAoMGDZL33bt3DyaTCREREZnG2/fdunUr28AUYAs8TZ06FYcOHZKDA6IoYuvWrahTpw4iIyMBAHPnzoVOp5Pv16NHD0ycOBHr1q3D22+/XSClW9OnT0epUqXw9ddfy8fr2bMnevTogTlz5mQbmAKAdu3a4euvv8Yvv/yCZ555Rt6/detWREZGIioqCgCwd+9eVKlSBYsWLXro+f77778AUGgroF28eBHbtm1DmTJlAADBwcGYOHEili1bhu3bt8v/r6IoYvny5bh27Zo89mH07NkTb775psO+xx9/HCNGjMAff/yBevXqoXr16njsscfwww8/oFWrVrmet127dvj8889x//59OUBkMpnw008/oXXr1nJgZv78+bBardiyZYsc7OrRowdGjBiBJUuWoHv37g7XYVYsFgvi4+MB2AJdMTExuH37Nl555RV5zNGjR7Fp0ybMmTPHISDZsGFD9O3bF9u3b5f3F9S1r9frHcrmAGDKlClISUnB559/DsD2PDF58mQ0bNgQMTExcp+u7t27o3379liwYIE8dtGiRZAkCWvWrEHp0qUBAM8991yeA6z231VSUhK2bduGn376CdWqVUPFihXlMRcvXsSaNWtQr149AEDbtm3RvHlzfPPNNwUWmCYiooLDUj4iIiIP1717d4ef9+3bBwByQ2U7+4d3++2//PILkpOT0b9//0y9ZR6mEfSdO3cwcuRIlClTBn379pX3G41GAFn387Gf3z4mO+3atYNarXYo5zty5AhiY2MdPuBm/GCelJSE+Ph41KtXD6mpqZnKC/Pj3r17OHz4MNq2bSsfPz4+Hnfv3kXTpk1x6dIlxMbGZnv/J598EiEhIdi6dau87/79+/j111/lbCkACAoKws2bN3Hy5MmHnnNSUhIAZCq7LCiNGjVyCPjUrl0bAPDss886BBvtGTS5rcTorIz/10ajEfHx8fK5//7
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABJwAAAK1CAYAAACNXfQYAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA6FdJREFUeJzs3Xd4U2Ubx/Hvyepu6WBvmSoIKqIMRREQxImACxQBcSEiggJOEBEHirJEQcUFgltElBcXbnGLW0Bk0wGd2Xn/SBtaaKGBtknT3+e6el2nJ0/OudMm7cmd+7kfw+fz+RAREREREREREakgplAHICIiIiIiIiIikUUJJxERERERERERqVBKOImIiIiIiIiISIVSwklERERERERERCqUEk4iIiIiIiIiIlKhlHASEREREREREZEKpYSTiIiIiIiIiIhUKCWcRERERERERESkQinhJCIiIiIiIiIiFUoJJxEREak0bdq0Yfbs2aEOQ8pp9uzZtGnTpkKP+dVXX9GmTRu++uqrCj1uuNv/uf/aa6/Rpk0btmzZUqVx9OzZk4kTJ1bpOUVEREAJJxERkZB48cUXee211yr8uD179qRNmzYHfN11110Hvd+0adNo06YN//77b5ljHn30Udq0acPvv/9e0WFHlPT0dB544AH69u1Lhw4d6NixIwMGDGDevHlkZ2eHOrxKU1nP6cNVlOgq+jr66KPp0qULY8aM4Z9//gl1eGGn+M+qbdu2dO/eneHDhx92onDixIkcf/zxFRyliIhUJ5ZQByAiIlITLVmyhOTkZAYMGFDhxz766KO56qqrSuxr3rz5Qe9z7rnn8vzzz/P2228zevToUsesWLGC1q1b07Zt2wqLNdL89NNPjBo1ivz8fM477zyOPfZYAH755Reeeuop1q1bx9NPPx3iKCtHWc/pk046iZ9++gmr1RqSuIYOHUr79u1xu9388ccfLF26lK+++ooVK1ZQu3btKovj/PPPp3///thstio7Z7C6devG+eefj8/nY8uWLSxZsoQrr7ySBQsW0KNHj1CHJyIi1YwSTiIiImEuPz+f2NjYco+vW7cu559/flDn6NChA02bNuWdd94pNeH0/fffs2XLFm655ZagjluTZGdnM3r0aMxmM6+//jotWrQocfvNN9/MsmXLQhRd6JhMJqKiokJ2/k6dOtG3b9/A982bN+eee+7hjTfe4Oqrr66yOMxmM2azucrOdziaNWtW4m9H7969Oe+883juueeUcBIRkaBpSp2IiMghFPW1+ffff5k4cSKdOnXixBNPZNKkSRQUFJQY++qrr3LFFVfQpUsX2rVrx9lnn81LL71UYkzPnj3566+/+PrrrwNTWIYOHQrs6/Py9ddfc88999ClS5fDeqPndDrJz88P6j7nnnsuGzZsYP369QfctmLFCgzD4JxzzsHpdPLYY48xYMAATjzxRDp27Mhll13Gl19+echzTJw4kZ49ex6wv6zeQW+++SYDBgzguOOOo3Pnztx8881s3779oOdYtWpV4Ge4v6VLl9KmTRv+/PNPAHbv3s2kSZM47bTTaNeuHd27d+e66647rD47S5cuZefOnUycOPGAZBNAWloa119/feD7svpb7d9zp+g5sW7dOqZNm8Ypp5xCp06duOuuu3A6nWRnZ3Prrbdy0kkncdJJJ/Hggw/i8/kC9y+rh9KWLVto06bNIafBHelzev/zT506leOPP/6A1w7AuHHj6NatGx6PJ7Dv448/5rLLLqNjx44cf/zxjBo1ir/++uugMR9Mp06dAPjvv/9K7N+5cyeTJk2ia9eutGvXjv79+/PKK6+UGHMkz/39ezgVPedL+yr++/d6vTz77LP079+f9u3b07VrV+666y727t1b4vg+n4958+Zx2mmn0aFDB4YOHXpEPyfwP0eTk5MDMRf9LleuXMn8+fM57bTTaN++PVdeeeVBp+OKiEjNpAonERGRcho7diyNGjVi3Lhx/PrrryxfvpyUlBQmTJgQGLNkyRJatWpFz549sVgsfPjhh0yZMgWfz8fll18OwOTJk7n33nuJjY3l2muvBfzJiOKmTJlCSkoKN9xwQ9CJoy+//JKOHTvi8Xho2LAhV155JVdeeeUh73fuuecyZ84cVqxYEZgKBuDxeHj33Xfp1KkTDRo0IDMzk+XLl3POOecwaNAg8vLyeOWVVxg5ciTLly/n6KOPDiressyfP5/HHnuMfv36MXDgQDIzM3nhhRe4/PLLeeONN0hMTCz1fqeffjqxsbG8++67dO7cucRtK1eupFWrVrRu3RqAG2+8kb///pshQ4bQsGFDMjMz+eyzz9i+fTuNGjUKKt4PPviA6OhozjrrrMN7wIcwbdo00tLSuPHGG/nxxx95+eWXSUhI4Pvvv6d+/frcfPPNfPLJJyxatIjWrVtzwQUXVMh5K+o5XeTss8/mxRdf5KOPPqJfv36B/QUFBXz44YdceOGFgUqgN954g4kTJ9K9e3fGjx9PQUEBS5Ys4bLLLuP1118P+ncEsHXrVoASz5/09HQGDx6MYRhcfvnlpKSk8Mknn3D77beTm5vLsGHDAMjNza2w537v3r1p0qRJiX3r169n8eLFpKSkBPbdddddvP766wwYMIChQ4eyZcsWXnzxRX799VeWLFkSmKr42GOPMX/+fHr06EGPHj1Yv349w4cPx+VyBf0zKrJ3716ys7Np2rRpif1PPfUUhmEwfPhwcnNzWbhwIePHj2f58uWHfS4REYk8SjiJiIiU09FHH8306dMD3+/Zs4dXXnmlRMLphRdeIDo6OvD9kCFDGDFiBM8880zgzXmvXr2YNWsWycnJZU59S0pK4tlnnw16Ck7r1q058cQTad68OXv27OH1119n+vTp7Nq1q0ScpWnWrBnt27dn5cqVTJgwAZPJXwj9+eefk5GRwU033RSI7YMPPijRi2bw4MH069eP559/vsTP6HBt3bqV2bNnM3bs2EACA6BPnz5ceOGFvPTSSyX2FxcdHU3Pnj157733uOOOOwI/w927d/PNN98EpgxmZ2fz/fffc+uttzJixIjA/a+55prDinnDhg00a9as0nr0pKamBt7oX3755WzevJlFixZx8cUXM2XKFAAuvvhievbsyauvvlphCaeKek4XOfHEE6lbty7vvvtuiYTTRx99RH5+PmeffTYAeXl53HfffQwaNIh77703MO7CCy+kb9++LFiwoMT+suTl5ZGZmRno4TR9+nQMw6BPnz6BMY8++igej4e3336b5ORkAC699FLGjRvHnDlzuOSSS4iOjq7Q537btm1L9EPLzMxk1qxZtG7dOvAcXbduHcuXL+fhhx/m3HPPDYw9+eSTGTlyJKtWreLcc88lMzOThQsXcvrpp/PEE09gGEbgcT3xxBPljsnhcJCZmQn4K+AeeeQRPB5PiSmJRePeeOONwM8hMTGR++67jz///DOQzBUREdGUOhERkXK65JJLSnzfqVMn9uzZQ25ubmBf8TfmOTk5ZGZm0rlzZ/777z9ycnLKfa7BgwcfVr+XJ554gquvvppevXoxcOBAXnjhBbp3786zzz7Ljh07Dnn/8847jx07dvDNN98E9q1YsQKr1Rp402k2mwNvNL1eL3v27MHtdtOuXTt+/fXXoGMuzerVq/F6vfTr14/MzMzAV1paGk2bNj3kyln9+vUjIyOjxLS69957D6/XG0hoREdHY7Va+frrrw+YnnQ4cnNziYuLO+LjlGXgwIGBRALAcccdh8/nY+DAgYF9ZrOZdu3aHTBd7EhU1HO6iGEY9O3bl48//pi8vLzA/nfffZe6dety4oknAv5EZ3Z2Nv379y/xHDCZTHTo0KHcq6dNnjyZLl26cOqppzJy5EhycnJ48MEHOe644wD/VLT333+fnj174vP5Spyre/fu5OTkBKaZVtZz3+PxcMstt5CXl8fcuXMDPdtWrVpFQkIC3bp1KxHXscceS2xsbOBn8Pnnn+NyuRgyZEiJ50h5KhuLe+WVV+jSpQtdunRh0KBBfPfdd1x11VUHHGfAgAElkm5lTVMUEZGaTRVOIiIi5dSgQYMS3xd
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA6ORJREFUeJzs3Xd4U9UbB/DvzU66B5S9l8oGQbYsWaI/EBAQFAURWSIiAiJDhoKC7FmUIbJciGxRERWRIYgIisoehe6Vnfv7I82loStt02b0+3mePs/tzcm5J2luk/vmPe8RRFEUQUREREREREREVIxknh4AERERERERERGVPAxKERERERERERFRsWNQioiIiIiIiIiIih2DUkREREREREREVOwYlCIiIiIiIiIiomLHoBQRERERERERERU7BqWIiIiIiIiIiKjYMShFRERERERERETFjkEpIiIiIiIiIiIqdgxKEREREWX4/PPPUbt2bVy/ft3TQyEXdejQAZMmTXJrn5MmTUKHDh3c2qe3y+61P3jwYAwePLhYx3Hs2DHUrl0bx44dK9bjEhGRZzAoRUREVIJt3rwZn3/+udv73bNnDyZMmIDHHnsMtWvXdvnCduXKlahduzYef/zxXNuZzWY0b94cAwYMyLGNKIpo164devXqla+xl0THjh3D6NGj0apVK9StWxctWrTAiBEjcODAAU8PrcjExMRg6dKlOH/+vKeHIpk0aRJq164t/dStWxddunTB4sWLYTQaPT08r+IIojl+6tWrhy5duuDtt99GbGxsgfqsXbs23n77bTePlIiIcqPw9ACIiIjIc7Zs2YKwsDD07t3b7f3+8ccfqFevHhITE126z+3bt7F69WrodLo82yqVSnTt2hXbtm3DjRs3UL58+Sxtjh8/jtu3b2PIkCH5HH3JsmTJEixfvhxVqlTB008/jXLlyiExMRGHDx/GmDFj8P7776Nnz56eHqbb3blzB8uWLUP58uXxwAMPON02a9YsiKLokXGpVCrMnj0bAJCamopDhw5hxYoVuHr1KhYsWFCsY1m3bl2xHq8gxo4diwoVKsBkMuHkyZPYsmULDh8+jK+//hpardbTwyMiojwwKEVEREQuSU9PdylgBADz589HVFQUZDJZnllPDvPmzUODBg1gs9mQkJCQZ/uePXti69at2L17N4YPH57l9q+//hoymQzdu3d36fgl0b59+7B8+XJ06dIFCxYsgFKplG4bNmwYjhw5AovF4sERekbm56G4KRQKPPnkk9LvAwcORP/+/bF7925MnjwZkZGRxTYWlUpVbMcqqLZt26JevXoAgL59+yI0NBQfffQRDh065PL/HiIi8hxO3yMiIvIRS5cuRe3atXHlyhVMmjQJTZs2RZMmTTB58mTo9Xqntp999hmeffZZtGjRAnXr1kX37t3xySefOLXp0KEDLl68iF9//VWaAuOYZueYGvPrr79ixowZaNGiBdq1a+fyWMuWLQuZzPWPGcePH8f+/fsxZcoUl+/TpEkTlC9fHrt27cpym9lsxv79+9G8eXNERUXhwoULmDRpEjp27Ih69eqhVatWmDx5skvBr9q1a2Pp0qVZ9mdXyyg5ORlz5sxBu3btULduXXTu3Blr1qyBzWbL9RgvvfQSOnbsmO1tTz/9tFMm208//YQBAwagadOmaNSoEbp06YKFCxfm+Tiys3jxYoSGhmLu3LnZBmLatGmD9u3bA8i53lZ2NYAGDx6Mxx9/HBcuXMCgQYPQoEEDdO7cGfv27QMA/Prrr+jbty/q16+PLl264Oeff3bqM6eaTo5zIDeJiYmYN28eevbsiUaNGqFx48YYNmwYLly44DTmPn36AAAmT54svf4dU1kzH99sNqNZs2aYPHlylmOlpqaiXr16mDdvnrTPZDJhyZIl6Ny5M+rWrYt27dph/vz5MJlMuY47J4IgoHHjxhBFEdeuXXO67fDhwxg4cCAaNmyIRo0aYfjw4bh48aJTm8K89u+vKdWhQwenKXOZfzL//WNiYjB58mS0bNkSdevWRY8ePfDpp59m6f/27dsYOXIkGjZsiBYtWmDu3LkFfp4cHnnkEQCQXqeTJk1Co0aNEBMTg5EjR6JRo0Z45JFHMG/ePFit1kIdi4iICo+ZUkRERD5m3LhxqFChAsaPH48///wTO3bsQHh4OF5//XWpzZYtW1CzZk106NABCoUC3333HWbOnAlRFPHMM88AAKZMmYJZs2ZBp9NhxIgRAJAlC2PmzJkIDw/HqFGjkJ6eXiSPx2q1YtasWejTp0+eAYfMBEFAz549sWrVKly8eBE1a9aUbjty5AgSExOlaWc///wzrl27ht69e6NUqVK4ePEitm/fjn/++Qfbt2+HIAiFfhx6vR6DBg1CTEwM+vfvj7Jly+K3337DwoULcffuXbz55ps53rdbt25444038Pvvv6N+/frS/hs3buD06dOYOHEiAODixYt46aWXULt2bYwdOxYqlQpXrlzBqVOn8j3ey5cv47///sNTTz2FwMDA/D/gPCQlJWHEiBHo3r07unbtii1btmD8+PGw2WyYO3cu+vfvj8cffxzr1q3D2LFj8f3337tlHNeuXcM333yDrl27okKFCoiNjcW2bdswaNAg7N69G1FRUahevTrGjh2LJUuW4Omnn0aTJk0AAI0bN87Sn1KpRKdOnXDw4EHMnDnTKXvom2++gclkkrLxbDYbXn75ZZw8eRL9+vVD9erV8ffff2PDhg24fPkyVqxYUaDHdOPGDQBAcHCwtO/LL7/EpEmT0Lp1a0yYMAF6vR5btmzBwIED8cUXX6BChQoA3PvanzJlCtLS0pz2bdiwAefPn0doaCgAIDY2Fv369YMgCHjmmWcQHh6OH374AW+++SZSU1Ol6bQGgwHPPfccbt26hcGDB6N06dLYuXMnfvnllwI9Rw5Xr14FAGk8gP1/zNChQ1G/fn1MnDgRR48exYcffoiKFSti4MCBhToeEREVDoNSREREPuaBBx7A3Llzpd8TExPx6aefOgWlPv74Y2g0Gun3QYMGYejQofjoo4+koFSnTp2waNEihIWFOU0XyiwkJATr16+HXC4vokcDbN26FTdv3sT69evzfV9HUGrXrl0YP368tP/rr7+GWq1Gly5dANinQL3wwgtO923YsCHGjx+PkydPomnTpoV6DADw0Ucf4dq1a/jiiy9QpUoVAED//v1RunRprFu3Di+88ALKli2b7X07deoElUqFvXv3OgWl9u7dC0EQ0K1bNwD2LCmz2Yy1a9ciPDy8UOP9999/AQC1atUqVD85uXPnDhYsWCBNoWrZsiW6deuG1157DVu3bkWDBg0AANWrV8fQoUNx4MABt9Q2q127Nvbv3++Uqffkk0+iW7du+PTTTzFq1ChERkaibdu2WLJkCRo2bJjj69+he/fu+Oyzz/DTTz9JmWOAvaB/xYoVpelju3btws8//4xNmzY5vaZq1qyJ6dOn49SpU9kGvu4XHx8PwJ6J9c033+DAgQOoVasWqlWrBgBIS0vDnDlz0LdvX8yaNUu6X69evdC1a1esXr1a2u/O136nTp2cft+7dy/OnTuHsWPHSgHlDz74AFarFbt27UJYWBgAYMCAARg/fjyWLVuG/v37Q6PRYNu2bbh8+TIWLVokvb779euX59/ifqmpqYiPj4fJZMKpU6ewfPlyaDQap7+T0WhEt27dMGrUKGk8vXr1wqeffsqgFBGRh3H6HhERkY/p37+/0+9NmzZFYmIiUlNTpX2ZA1IpKSmIj49Hs2bNcO3aNaSkpLh8rH79+hVpQCohIQFLlizByJEjCxRkqVGjBh588EHs3r1b2peeno5vv/0Wjz76qJR5k/n5MBqNiI+Pl4Ii586dK+SjsNu3bx+aNGmC4OBgxMfHSz8tW7aE1WrF8ePHc7xvYGAg2rZti7179zoV2N6zZw8aNmyIcuXKAbiXKXPo0KE8pwTmxfF6CQgIKFQ/OdHpdOjRo4f0e7Vq1RAcHIzq1atLzz0Aafv+qWkFpVKppICU1WpFQkICdDodqlatij///LNAfT7yyCMICwvDnj1
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
2025-07-15 22:45:51 +08:00
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "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
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "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
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABJ4AAAK1CAYAAACJqCQlAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd8E/UbB/DPZXdCS8ueArKXIMgSRUCWAwRB2UNEZG8QBFQUEZCpjCKIioiKIsoQEbcoKAI/BUXZexTozLz7/ZHetaGDpiS5S/p5v168uCaX3DdpL3d57nmeryBJkgQiIiIiIiIiIiIf06k9ACIiIiIiIiIiCk0MPBERERERERERkV8w8ERERERERERERH7BwBMREREREREREfkFA09EREREREREROQXDDwREREREREREZFfMPBERERERERERER+wcATERERERERERH5BQNPRERERERERETkFww8ERERBcimTZtQrVo1nDlzRu2haErr1q0xefJktYdB+eSPv+MzZ86gWrVq2LRpk8+eMxjc/Lf/yy+/oFq1avjll18COo4+ffqgT58+Ad0mEREVHgw8ERERhYBLly5h3rx56NOnDxo0aJDvL69JSUlo2rQpqlWrhu3bt+e57po1a1CtWjX89NNPua6zceNGVKtWDbt27fL6NRQmKSkpWLp0KR5++GE0aNAAdevWRefOnfHaa6/h4sWLag/Pb7Zs2YK1a9eqPQyFHPCS/1WvXh2NGzfG4MGDsX//frWHpzmtW7f2eL+aNm2KJ598Ejt37izQ8y1ZsgTVqlVDYmKij0dKRERaYlB7AERERHT7jh8/jlWrVqFixYqoVq1avr80L168GFarNV/rduzYEXPnzsWWLVvQrFmzHNfZsmULihYtinvvvTffYy9sTp8+jf79++P8+fNo3749evToAaPRiL///hsfffQRvvrqK+zYsUPtYfrF559/jqNHj6J///4et5cpUwYHDx6EwaDOqWnnzp1x7733QhRFnDhxAuvXr0ffvn3x0UcfoVq1agEbx913342DBw/CaDQGbJveqlGjBgYMGADAHfD+4IMPMHz4cMycORNPPPGEyqMjIiItYuCJiIgoBNSqVQu//PILihYtiu3bt+cr8PTPP//g/fffx7Bhw7B48eJbrl+iRAk0adIEO3fuxKxZs2AymTzuv3jxIvbt24fH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
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQAA+BtJREFUeJzs3Xm8jPX7x/HXLGfm7JzFkl2EyholWyQqtFGibBVJJaVUtKFsLWRrIUvWpG9KSiQtv/ZUSPsihKzncNbZ5/fHmOE45zA458zMOe/n4+HhPvfcc9/XzJn7zD3XXJ/rY/B6vV5ERERERERERERKkDHUAYiIiIiIiIiISNmjpJSIiIiIiIiIiJQ4JaVERERERERERKTEKSklIiIiIiIiIiIlTkkpEREREREREREpcUpKiYiIiIiIiIhIiVNSSkRERERERERESpySUiIiIiIiIiIiUuKUlBIRERERERERkRKnpJSIiEgpsmLFCurXr8/OnTtDHUpY6dixIyNHjgx1GBKk4ngd79y5k/r167NixYoi22ckOP61/80331C/fn2++eabEo2jX79+9OvXr0SPKSIi4U9JKREREQnKhg0bGDJkCO3bt6dRo0a0adOGgQMH8v333xe4/Q8//MBNN91EkyZNaNOmDePGjSM7O/uEx5g/fz7169fnyy+/LHSb5cuXU79+fdavX39Gj6e0y8rKYubMmVxzzTU0a9aMxo0bc9VVV/Hss8+yd+/eUIdXbFatWsWrr74a6jAC/Mkw/78GDRpw0UUXMWjQIDZu3Bjq8MJOx44d8zxfrVq14uabb2bdunWntb8ZM2ZQv3590tLSijhSEREpCuZQByAiIiKRYdu2bRiNRnr37k1qaioZGRm888479O3bl1mzZnHJJZcEtv3111+55ZZbqFOnDiNHjmTPnj3MmzePbdu2MWfOnEKP0bVrV5555hlWrVpF69atC9xm1apVlC9fPs/xJK9///2XW265hf/++48rr7ySXr16ERUVxe+//87//vc/PvzwQ9auXRvqMIvFu+++y59//sktt9ySZ33VqlX58ccfMZtDc/l71VVXcckll+DxeNi2bRtLly6lf//+/O9//6N+/folFseFF17Ijz/+SFRUVIkd81Sde+653HrrrQDs27eP119/naFDhzJmzBhuuummEEcnIiJFSUkpERERCUrPnj3p2bNnnnU333wznTp1YsGCBXmSRFOmTCExMZFFixYRHx8PQLVq1Xjsscf4/PPPadu2bYHHqFSpEi1btmTdunWMHTsWi8WS5/a9e/fy3XffceONN4b1h+pQcrlcDB06lIMHD7Jw4UJatGiR5/bhw4fzyiuvhCi60DEYDFit1pAd/7zzzuPaa68N/Ny8eXNuv/12XnvtNcaMGVNicRiNxpA+D8GoVKlSnufquuuu4/LLL+fVV19VUkpEpJTR8D0REZEwsmvXLsaMGcMVV1xB48aNadmyJcOGDSuwt86ff/5J//79ady4MZdccgkvvvgiHo8nzzZfffUVDRo0YNq0aXnWr1q1ivr167N06dIzijcmJobk5GQyMzMD67Kysvjyyy+55pprAgkpgGuvvZbY2Fjef//9E+7zmmuuITMzk08++STfbe+99x4ej4err74agLlz59K7d29atmxJ48aN6dGjB2vWrDlp3P4hPccrrJfRp59+ys0330zTpk1p1qwZgwcP5s8//zzhMbZs2UL9+vV566238t322WefUb9+fT7++GPA95yNHz+ejh070rBhQ1q1asWtt97Kzz//fNLHcrwPPviA3377jSFDhuRLSAHEx8czfPjwwM+F9ds6vgeQvxfR6tWrmTlzJu3ataNZs2YMGzaMzMxMHA4H48ePp1WrVjRr1oxRo0bhcDgC9z9RT6f69eszY8aMEz6uDz/8kMGDB9O2bVsaNmxIp06deOGFF3C73Xli/uSTT9i1a1dg+FfHjh0LPP7cuXOpX78+u3btynesyZMn07BhQw4fPhxYt3nzZgYOHEjz5s1p0qQJffv2LXToajD8v5t///03z/qMjAzGjx9P+/btadiwIZ07d2b27Nn5zu3Tfe0f31PK/5ov6N/xPaBWrlxJjx49aNy4MRdddBHDhw/nv//+y3eM119/nU6dOtG4cWNuuOEGvvvuu1N6bo5XoUIFzj777MDvyv+7nDt3buBYDRs25Prrr+fHH388o2OJiEjJUqWUiIhIGNmyZQsbN26kW7duVK5cmV27dvHaa6/Rv39/3nvvPWJiYgDYv38//fv3x+12M3jwYGJiYli+fHm+Cgh/P5bZs2fTqVMnzj//fPbt28e4ceNo3br1aVUdZGVl4XA4SE9PZ+XKlfzxxx8MGTIkcPvvv/+Oy+WiYcOGee5nsVg499xz+fXXX0+4/8svv5wxY8bw7rvvcvnll+e57d1336Vq1ao0b94cgIULF9KxY0euvvpqnE4n7733Hvfeey+zZs2iQ4cOp/zYCvL2228zcuRI2rZty4gRI8jNzeW1117j5ptv5q233qJatWoF3q9Ro0ZUr16d999/n+7du+e5bfXq1ZQrVy5QMTZ69GjWrl1L3759qVOnDocOHeL777/n77//5vzzzz+leP29to6tNClKs2fPJjo6msGDB7N9+3YWL16M2WzGYDCQkZHB0KFD2bx5MytWrKBq1aoMHTq0SI771ltvERsby6233kpsbCxff/0106dPJysri4cffhiAIUOGkJmZyZ49exg1ahQAcXFxBe6vS5cuPPvss7z//vsMGjQoz23vv/8+bdq0oVy5coAvuXv77bfTsGFDhg4disFgYMWKFQwYMIClS5fSuHHjU348/gRLYmJiYF1ubi59+/Zl79699O7dm7POOouNGzcyZcoU9u/fz6OPPhrYtqhe+xdeeCHPPPNMnnW7d+9m6tSpJCcnB9a99NJLTJs2jS5dunDDDTeQlpbG4sWL6dOnD2+//Xbgcbzxxhs88cQTNGvWjAEDBvDvv/9y5513Uq5cOc4666xTfp4AnE4ne/bsoXz58nnWv/vuu2RnZ9OrVy8MBgNz5szhnnvu4cMPP1QlpYhIhFBSSkREJIx06NCBK6+8Ms+6Sy+9lF69erF27Vquu+46AF555RXS0tJ44403Ah+Iu3fvni+JA/Dggw/y+eef8/DDD7NixQoef/xxXC4X48ePx2AwnHKM9957L59//jkAUVFR9OrVi7vuuitw+/79+wGoWLFivvtWqFDhpNUl8fHxXHrppXz88cdkZWUFqq22bt3Kzz//zB133BGIe+3atURHRwfu26dPH3r06MH8+fOLJCmVnZ3N+PHj6dmzJ0899VRgfffu3bnyyiuZNWtWnvXH69q1K/PmzePw4cOBBIfD4eDDDz+kc+fOgQ/On376KTfeeGOeiqXbb7/9tGLeunUrCQkJp50AOBm3282iRYsCsaenp/Pee+/Rrl27wLDAPn36sGPHDlasWFFkSanJkyfn+V3fdNNNPPHEE7z22msMHz4ci8VCmzZtWLhwIRkZGSdNylWpUoWmTZuyevXqPEmpH3/8kX///TcQt9frZcyYMbRs2ZI5c+YEXnu9e/emW7duTJ06lXnz5p00/tzcXNLS0gI9pSZNmgTAFVdcEdhm/vz5/Pvvv7z11lvUqlUrcJyKFSsyd+5cbrvttsDvtahe+9WrV6d69eqBn+12OzfddBMVK1bkscceA3wJtBkzZnDfffflSUBffvnldO/enaVLlzJkyBCcTifPP/885557LgsXLgwMv61bty6PP/540K9Jl8sVaEy+b98+Zs+ezYEDB/JVbu3evZsPPvggcG7Vrl2bu+66i88//5xLL7006OdARERCR8P3REREwsixHzKdTifp6enUqFGDxMREfvnll8Btn376KU2bNs1ToZGcnBwY1nasmJgYJk6cyN9//02fPn345JNPGDVqFFWqVDmtGEeMGMG8efMYP348TZs2xel04nK5ArfbbDaAfP2gAKxWa+D2E7nmmmuw2+188MEHgXXvvvsuQJ7HeOzzdfjwYTIzM2nevHme5+pMfPnll2RkZNCtWzfS0tI
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAKyCAYAAAAEvm1SAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd8U9X7B/DPzW7SRVugzIJMWbIE2UOQJSKIgrJUEFGGoIgsZaiACMgUUIYyFPXrQBRQf4gIiggyBARBZUOBDroz7/39kd7bhq60TZqkfN6vV1+kycm9J8nh9t4nz3mOIEmSBCIiIiIiIiIiohKk8nUHiIiIiIiIiIjozsOgFBERERERERERlTgGpYiIiIiIiIiIqMQxKEVERERERERERCWOQSkiIiIiIiIiIipxDEoREREREREREVGJY1CKiIiIiIiIiIhKHINSRERERERERERU4hiUIiIiIiIiIiKiEsegFBERBZxly5ahTp06SEhIKLBtnTp1MHv27BLoFXnCgQMHUKdOHRw4cMDXXSE3DRkyBEOGDPHoNuX/43eS3Mb+5MmT0blz5xLtx+XLl1GnTh188cUXJbpfIiK6M2l83QEiIqLSLC0tDWvXrsWxY8dw/PhxJCUlYe7cuejXr1+u7f/991/MmTMHhw8fhlarRYcOHTBlyhREREQUar/79u3D9u3b8eeff+Lff/9FhQoV8OOPP+Zod/nyZdx///25bmPRokXo1atXnvvo3bs3UlJSsHv3bgiCkGubgQMH4uLFi/j555+h0fC0Iy+nTp3C2rVrcfDgQcTHx8NoNKJevXro3bs3Hn74YajVal930eMyMjKwZs0atGjRAi1btvR1dwA4g2HLly9XftdoNChfvjw6d+6McePGITQ01Ie98y8HDhzA0KFDld81Gg2io6PRrFkzjB07FlWqVCn0Njt37oxatWph9erVnuwqERH5MZ4dEhEReVFiYiJWrFiBihUrok6dOvj999/zbBsbG4tBgwYhJCQEEyZMQHp6OtatW4czZ87gs88+g06nc3u/33zzDbZv34569eqhXLlyBbZ/8MEH0b59e5f7GjdunO9zevfujYULF+LQoUO49957czx++fJlHD16FIMHD2ZAKh+fffYZZsyYgcjISPTp0wcxMTFIS0vDb7/9hmnTpuHmzZsYNWqUr7vpcRkZGVi+fDnG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
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "iVBORw0KGgoAAAANSUhEUgAABKUAAAK1CAYAAAAZu13qAAAAOnRFWHRTb2Z0d2FyZQBNYXRwbG90bGliIHZlcnNpb24zLjEwLjMsIGh0dHBzOi8vbWF0cGxvdGxpYi5vcmcvZiW1igAAAAlwSFlzAAAPYQAAD2EBqD+naQABAABJREFUeJzs3Xd4U2UbBvD7ZHcCbYGyQbZsqCBLhqBMUZSlgChTGbJEQGSpKHyAMhxgARFBhqKIMlSW4kA2yHCxp0CBlrYZJznfH+k5TTqTjsz7d11cV5q8Sd6kL6cnT57neQVJkiQQERERERERERF5kMrbEyAiIiIiIiIiouDDoBQREREREREREXkcg1JERERERERERORxDEoREREREREREZHHMShFREREREREREQex6AUERERERERERF5HINSRERERERERETkcQxKERERERERERGRxzEoRUREREREREREHsegFBER+Z1FixahevXqSEhIyHVs9erVMXPmTA/MigrCvn37UL16dezbt8/bUyEX9evXD/369SvQx5T/jweTrNb+xIkT0bZtW4/O49KlS6hevTo2btzo0eclIqLgpPH2BIiIiALZsWPH8NVXX2Hfvn24fPkyihYtinr16mH06NGoVKlSpvH//vsvZs2ahUOHDkGr1aJVq1aYNGkSoqKiXH7O1NRUbNy4ETt27MBff/2F5ORkVKhQAT179kSvXr2gVqudxttsNixbtgyfffYZbty4gYoVK2Lo0KHo0qVLjs/TtWtXJCUlYdeuXRAEIcsxvXv3xoULF/Djjz9Co+FpR3ZOnTqFZcuWYf/+/bh16xZCQ0Nx//33o2vXrnj88ccz/c4CQWpqKuLj49G4cWM0adLE29MBYA+GLV68WPlZo9GgZMmSaNu2LUaNGoXIyEgvzs637Nu3D/3791d+1mg0iI2NRaNGjTBy5EiUK1fO7cds27YtqlatiiVLlhTkVImIyIfx7JCIiKgQxcfH49ChQ+jQoQOqV6+OGzduYPXq1ejevTvWrVuHatWqKWOvXbuGZ555BhERERgzZgxSUlKwfPly/PXXX9iwYQN0Op1Lz3nx4kW8/vrraNq0KQYMGIDw8HDs3bsXM2bMwNGjRzF79myn8e+88w6WLl2Knj17ok6dOtixYwfGjRsHQRDQuXPnbJ+na9eumDdvHg4cOIAHHngg0+2XLl3CkSNH0LdvXwakcrBhwwZMmzYN0dHR6NatGypUqIDk5GT89ttvePXVV3Hjxg0MGzbM29MscKmpqVi8eDFGjBiRKSj1wgsvYMiQIV6aGTB9+nSEhoYiNTUVv/76K1atWoUTJ07gs88+8+g8Xn/9dUiS5NHndFe/fv1Qp04diKKIkydPYt26ddizZw++/vprlCxZ0tvTIyIiH8czRCIiokI0YMAAzJ071ymg1KlTJ3Tt2hVLly7F3Llzles//PBDJcupdOnSAIC6deviueeew5dffolevXq59JwxMTHYvHkzqlatqlzXu3dvTJo0CRs3bsSLL76IChUqAACuX7+OFStW4JlnnsHUqVMBAD169EDfvn0xZ84cdOjQIdssna5du2L+/PnYvHlzlkGpb7/9FpIkoWvXri7NOxgdOXIE06ZNQ/369bF06VKEh4crtw0YMADHjx/H33//7cUZeodGo/FqIPPRRx9VshN79+6NMWPGYMuWLTh27Bjq1q3rsXlotVqPPVdexcXFoUOHDgCAJ598EhUrVsQbb7yBr776CkOHDvXy7IiIyNexpxQREfmt27dv46WXXkLDhg3RpEkTvPHGGzCZTFmO/frrr/Hoo4+iTp066N69O/bv36/cdvr0aVSvXh07duxQrvvjjz9QvXp1PPHEE06PM2jQIPTo0cPlOTZs2DBThlPFihVRtWpVnDlzxun67777Dq1bt1YCUgDQrFkzVKxYEVu3bnX5OaOiopwCUrL27dsDsJcIyn744QdYLBY8/fTTynWCIKBPnz64du0aDh8+nO3zlCpVCg888AC2b98Oi8WS6fZvvvkG5cuXR7169XD58mVMnz4djz76KOrWrYsmTZpg1KhRuHTpUq6vp23btpg4cWKm67PqZWQ2m7Fw4UK0b98etWvXRqtWrTBnzhyYzeYcn2PmzJlo0KABUlNTM902duxYNG/eHFarFQBw/PhxDBw4EE2aNEHdunXRtm1bTJo0KdfXkZXFixdDEATMnTvXKSAlk9crkH2/rax6AE2cOBENGjTAlStXMHToUDRo0AAtW7bE6tWrAQB//vkn+vfvj/r166NNmzbYvHmz02Nm19Np48aNqF69eo6/N7PZjAULFqB79+5o1KgR6tevj6effhq//fab05ybNm2qvAfVq1dH9erVsWjRoiyfv0uXLln2rbLZbGjZsiVGjRrldN3HH3+Mzp07o06dOmjWrBmmTp2Ku3fvZjvn3MTFxQEALly44HT90aNHMXDgQDRq1Aj16tVD3759cfDgQacx+Vn7GXtK9evXT3mvMv5z/P0nJibizTffRKtWrVC7dm20b98eS5cuhc1mc3r8xMRETJw4EY0aNUJcXBxeeeUVJCUluf3+OHrwwQcBQHl98u/y/PnzmDhxIuLi4tCoUSNMmjQpy/9vREQUXJgpRUREfmv06NEoU6YMxo0bhyNHjmDVqlVITEzEnDlznMbt378fW7ZsQb9+/aDT6fDZZ59h0KBB2LBhA6pVq4Zq1aohMjISBw4cwMMPPwwAOHDgAFQqFU6fPo179+4hPDwcNpsNhw8fRs+ePfM1b0mScPPmTafA0fXr13Hr1i3Url070/i6devixx9/zNdzAsDNmzcBAMWKFVOuO3XqFEJDQ1G5cuVMzynfLn8gz0rXrl3x2muvYe/evWjTpo1y/Z9//om//voLw4cPB2AP5Bw+fBidO3dGbGwsLl++jM8++wz9+/fHt99+i5CQkHy/PpvNhhdeeAEHDx5Ez549UblyZfz1119YuXIlzp07h/fffz/b+3bq1AmrV6/G7t270bFjR+X61NRU7Nq1C0888QTUajVu3bqFgQMHolixYhgyZAgiIyNx6dIlfP/9927PNzU1Fb/99hvi4uKcApEFxWq1YvDgwYiLi8P48eOxefNmzJw5EyEhIXjnnXfQtWtXPPLII1i7di1eeeUV1K9fP099gDK6d+8eNmzYgC5duqBHjx5ITk7G559/rvyfq1mzJqKiojB9+nRMnz4d7du3VwKm2TU379ixIxYvXowbN26gePHiyvUHDx7Ef//9h06dOinXTZ06FV9++SW6d++Ofv364dKlS1i9ejVOnjyJzz77LE/ZR3KAxbGn1K+//orBgwejdu3aGDFiBARBwMaNG/Hss89izZo1yv+hglz7w4YNw1NPPeV03ddff429e/ciOjoagH1d9e3bF9evX0fv3r1RqlQpHD58GPPnz8eNGzfw6quvArAfh1588UUcPHgQvXv3RuXKlfH999/jlVdecfv9cSQH7ooWLep0/ejRo1G2bFmMHTsWJ0+exIYNGxAVFYWXX345X89HRET+jUEpIiLyW2XLlsUHH3wAAHjmmWcQHh6ONWvW4Pnnn0eNGjWUcX/99Re++OILJeDTuXNndOjQAQsXLsTixYuhUqnQsGFDHDhwQLnPwYMH0a5dO+zYsQOHDh3CQw89pASocgrSuOLrr7/G9evXnbI7/vvvPwBw+sAtK168OO7cuQOz2exyX6mMzGYzVq5cibJly6JOnTrK9Tdu3EB0dHSmRuXyPOR5ZefRRx/F66+/jm+++cYpKPXNN98AgFK617p1a6XER9amTRv06tUL27dvx+OPP56n1+Vo8+bN+OWXX7Bq1Sqn31HVqlUxbdo0HDp0CA0bNszyvo0aNULJkiWxdetWp6DU7t27kZKSogQ9Dh8+jLt372LZsmVO7+OYMWPcnu/58+dhsVic+ooVJJPJhMcee0wpoeratStatmyJyZMnY/78+cpratasGTp27IivvvoKI0eOzPfzFilSBDt37nRaqz179kTHjh2xatUqzJo1C6GhoXj00Ucxffp0VK9eHd26dcvxMTt16oSFCxdi+/b
|
2025-07-15 22:45:51 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"data": {
|
|
|
|
|
|
"text/plain": [
|
|
|
|
|
|
"<Figure size 1200x700 with 1 Axes>"
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"image/png": "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GjlyJEqVKoW3334bp0+fxvr165GYmIiPPvrIqd2xY8ewc+dO9OvXDyqVCps2bcLAgQOxbds2VK1aFVWrVkVQUBCOHz8uBSaOHz8OmUyG8+fPQ6fTISAgADabDadOnULPnj1z3dfx48cjOTkZcrkc9erVw5gxY5ymy124cAEWiwU1atRwep5KpcLjjz+Ov//+Ow/vkLOYmBgAQGhoaK77lxlBENClSxcsW7YMFy9eRJUqVaRjBw4cwIMHD6RpZ4cOHcL169fRrVs3REZG4uLFi9i6dSsuXbqErVu3QhCER359KSkp6Nu3L+7evYtevXrhsccew6lTpzBv3jzcv38f7733XpbP7dixI8aOHYs///wTtWrVkvbfvHkTp0+fxpgxYwAAFy9exBtvvIFq1aph+PDhUKlUuHr1Kk6ePJnr/l65cgWXL1/GCy+84BSIdJeEhAQMHjwYnTp1QocOHbBp0yaMHj0aNpsNM2fORK9evfDss89i5cqVGD58OH755Re39OP69ev46aef0KFDB5QuXRoxMTHYsmUL+vbtix07dqB48eKoVKkShg8fjoULF+LFF19EvXr1AAB169bNcD6lUom2bdtiz549mDp1qlP20E8//QSTySRl49lsNrz55ps4ceIEevbsiUqVKuGff/7B2rVrceXKFSxdujRPr+nmzZsAgKCgIGnfN998g3HjxqFZs2Z45513kJKSgk2bNqF37974+uuvUbp0aQDuHfsTJkyAXq932rd27Vr8/fffCAkJAWD/Pe/ZsycEQUCfPn0QFhaGX3/9Fe+99x50Op00ndZgMOCVV17B7du30a9fPxQrVgzffvstfv/99zy9Rw7Xrl0DAKk/AGC1WjFgwADUqlULY8aMweHDh7Fq1SqUKVMGvXv3fqTrERFRwcagFBERFVilS5fGp59+CgDo06cPAgICsHHjRrz22muoXr261O6ff/7Bl19+KQV8OnfujA4dOmDhwoVYvHgxZDIZ6tati+PHj0vPOXHiBNq2bYu9e/fi5MmTaNGihRSgql+/vst9VCqVaN++PVq0aIHQ0FD8+++/WLlyJfr06YPNmzfjiSeeAADcv38fAFCsWLEM54iMjMSJEydy/wal8+DBA2zbtg3169d3uoar/cuKIyi1fft2jB49Wtr//fffQ61Wo3379gDsU6Bee+01p+fWqVMHo0ePxokTJ3L1nmZl9erVuH79Or7++muUL18eANCrVy8UK1YMK1euxGuvvYbHHnss0+e2bdsWKpUKu3btcgpK7dq1C4IgoGPHjgDsWVJmsxmfffYZwsLCHqm///77LwCgatWqj3SerNy7dw9z586VplA1adIEHTt2xNtvv43Nmzejdu3aAIBKlSphwIAB+PHHH50ywvKqWrVq+OGHHyCTpSXkP//88+jYsSO++OILvPXWW4iIiECLFi2wcOFC1KlTx2m6XGY6deqEL7/8Er/99puUOQYAO3fuRJkyZaQA6vbt23Ho0CGsX7/eaUxVqVIFkydPxsmTJzMNfD3MsbKnTqfDTz/9hB9//BFVq1ZFxYoVAQB6vR4zZsxAjx49MG3aNOl5Xbt2RYcOHbB8+XJpvzvHftu2bZ0e79q1C2fPnsXw4cOlDLZPPvkEVqsV27dvlwLQL730EkaPHo3FixejV69e0Gg02LJlC65
|
2025-07-10 15:07:31 +08:00
|
|
|
|
},
|
|
|
|
|
|
"metadata": {},
|
|
|
|
|
|
"output_type": "display_data"
|
|
|
|
|
|
},
|
|
|
|
|
|
{
|
|
|
|
|
|
"name": "stdout",
|
|
|
|
|
|
"output_type": "stream",
|
|
|
|
|
|
"text": [
|
|
|
|
|
|
"\n",
|
|
|
|
|
|
"所有指标的分析图表已生成。\n"
|
|
|
|
|
|
]
|
|
|
|
|
|
}
|
|
|
|
|
|
],
|
2025-07-28 14:36:58 +08:00
|
|
|
|
"execution_count": 28
|
2025-07-10 15:07:31 +08:00
|
|
|
|
}
|
|
|
|
|
|
],
|
|
|
|
|
|
"metadata": {
|
|
|
|
|
|
"kernelspec": {
|
|
|
|
|
|
"display_name": "quant",
|
|
|
|
|
|
"language": "python",
|
|
|
|
|
|
"name": "python3"
|
|
|
|
|
|
},
|
|
|
|
|
|
"language_info": {
|
|
|
|
|
|
"codemirror_mode": {
|
|
|
|
|
|
"name": "ipython",
|
|
|
|
|
|
"version": 3
|
|
|
|
|
|
},
|
|
|
|
|
|
"file_extension": ".py",
|
|
|
|
|
|
"mimetype": "text/x-python",
|
|
|
|
|
|
"name": "python",
|
|
|
|
|
|
"nbconvert_exporter": "python",
|
|
|
|
|
|
"pygments_lexer": "ipython3",
|
|
|
|
|
|
"version": "3.12.11"
|
|
|
|
|
|
}
|
|
|
|
|
|
},
|
|
|
|
|
|
"nbformat": 4,
|
|
|
|
|
|
"nbformat_minor": 5
|
|
|
|
|
|
}
|