|
|
9bafc9ba0e
|
revert(plotting): 恢复原始 plotting.py 并添加适配层
1. 从初始提交 (f085d7c) 恢复完整的原始 plotting.py
- 原始配色: geyser 色阶, simple_white 模板
- 风玫瑰: Beaufort 12级分桶 + turquoise 扇形
- 时序图: 散点 + 滚动均线 + 多Y轴
- 背景校正: 双Y轴 + timestamp + 虚线基线
- 3D散点: px.scatter_3d + 自定义 hover
- 克里金: 散点叠加等高线 + 地面线
2. 新增适配包装函数(原始签名与当前调用方式不兼容):
- _scatter_3d_wrapper(df,gas) → scatter_3d(df,color=...)
- _windrose_wrapper(df) → windrose(df)
- _time_series_wrapper(df) → time_series(df,ys=['windspeed'])
- _contour_krig_wrapper(krig_vars) → contour_krig(df,gas,xx,yy,field)
- _heatmap_krig_wrapper(krig_vars) → heatmap_krig(xx,yy,field)
- _semivariogram_plot(variogram,gas) → 保留 Plotly 实现
- _outliers_wrapper(df,col,name) → outliers(series,high,low)
3. 更新调用方使用包装函数:
- processing_pipelines.py: _scatter_3d_wrapper/_windrose_wrapper/_time_series_wrapper
- interpolation.py: _contour_krig_wrapper/_heatmap_krig_wrapper/_semivariogram_plot
- pre_processing.py: _outliers_wrapper
|
2026-07-10 16:34:49 +08:00 |
|
|
|
e3acd46da9
|
feat(plotting.py): 从空壳重写为完整的 Plotly 图表实现
原代码为轻量级存根,所有函数返回 None 以禁用可视化依赖。
本次重写实现了 10 个图表函数:
1. blank_figure() - 返回空占位图(含 'Plot not available' 文本)
2. scatter_3d() - 3D 散点图(飞行轨迹 + 气体浓度着色)
3. scatter_2d() - 2D 散点图
4. time_series() - 时序折线图(风速等)
5. background_plotting() - 背景校正可视化(原始数据/拟合基线/信号点/背景点)
6. windrose() - 风玫瑰图(16 扇区 bar_polar)
7. outliers() - 异常值检测箱线图(IQR 方法)
8. contour_krig() - 克里金插值等高线图(go.Contour + RdBu_r 色标)
注意:np.mgrid 生成 (x_nodes,y_nodes) 形状的数组,xx 沿 axis=0 变化,yy 沿 axis=1 变化,
field 需转置 (.T) 后方可与 Plotly 的 z[y][x] 索引匹配
9. heatmap_krig() - 克里金网格热力图(go.Heatmap + zmid=0 对称色标)
10. semivariogram_plot() - 半变异函数图(实验值散点 + 拟合模型曲线)
11. create_kml_file() - KML 文件生成(保持返回 None,未实现)
所有图表使用 plotly.graph_objects,数据通过参数传入,异常时优雅降级
|
2026-07-10 14:48:55 +08:00 |
|