Releases: One-sixth/lightweight-charts-python
Releases · One-sixth/lightweight-charts-python
v2.5.1
[v2.5.1] - 2026-06-10
Added
- HtmlTabChart iframe 嵌入示例: 新增示例
32_html_tab_chart中的 iframe 嵌入演示,展示如何将 HtmlTabChart 嵌入其他 HTML 页面- 采用双文件方案:外壳 HTML + 图表内容 HTML,通过
<iframe src="...">引用 - 记录了多种单文件方案(srcdoc/data:base64/blob/Shadow DOM/innerHTML)的失败原因
- 采用双文件方案:外壳 HTML + 图表内容 HTML,通过
- reset_sub(): 新增子图内容重置功能,清除子图全部内容但保留布局,不影响其他子图,reset 后可重用
- 清除范围:K线数据、折线/柱状图系列、价格线、标记、绘图、表格、ToolBox、TopBar、Legend、Events、sync、handlers
- 新增示例
33_reset_sub,演示 4 子图网格 + 主图 reset + 独立子图 + 十字光标同步恢复 - 新增测试
test_reset_sub.py,自动化验证 Python + JS 双端资源清理
- Table div 归属修复: Table 不再追加到全局容器,改为追加到所属图表的 div,修复多子图表格重叠问题
- syncChartsAll 回调存储: crosshair 和 range 回调现在被正确存储到
_syncCallbacks中,支持后续清理和重建
Changed
- syncChartsAll 保护检查:
target.legend?.div检查仅保护legendHandler调用,不再阻断setCrosshairPosition - DrawingTool/ContextMenu 访问权限:
_chart、_clickHandler、_moveHandler、_onRightClick、div改为 public,支持 ToolBox 清理 - ToolBox 构造函数: 存储
_contextMenu和_undoHandler引用,支持精确清理
Fixed
- syncChartsAll 回调未存储: 匿名回调改为命名变量并存储到
_syncCallbacks['__crosshairAll']/['__rangeAll'],支持 unsubscribe - _unsync_all 只处理部分回调: 改为遍历所有
_syncCallbacks条目统一清理,兼容syncCharts和syncChartsAll两种模式 - _rebuildSync 排除 reset 子图: reset_sub 后改为调用
syncChartsAll全量重建,不排除任何子图 - setCrosshairPosition 异常中断: 用 try-catch 包裹,空数据图表异常不影响其他图表的十字光标同步
- Table div 追加到全局容器: 移除 Table JS 构造函数中的
window.containerDiv.appendChild,由 Python 端控制追加位置
[v2.4.2] - 2026-06-07
Added
- HtmlTabChart: 新增多策略 Tab 切换图表,支持多策略切换、交易明细、绩效指标展示
- 改自 smalinin/bn_lightweight-charts-python 的 HtmlChart_BN
- 新增示例
32_html_tab_chart - 支持技术指标(SMA、布林带)、买卖标记、图例显示
- 使用专用标记
html-tab-chart-marker实现自适应高度计算
Changed
- API 重命名:
StaticLWC.load()→export(),_load()→_export() - HTMLChart: 移除
filename构造参数,改为export(filename)方法 - HtmlTabChart: 移除
filename构造参数,改为export(filename)方法 - ReflexChart:
load()→export(),_load()→_export()
Fixed
- HtmlTabChart 多策略代码丢失: 修复
_prepare_html()只遍历历史策略,遗漏当前策略的问题 - HtmlTabChart UTF-8 编码: 修复 HTML 文件写入时的
UnicodeEncodeError - marker API 参数格式: 修复
position和shape参数使用错误格式导致标记不显示的问题 - HtmlTabChart X 轴刻度被裁剪: 修复图表高度计算错误导致 X 轴刻度不可见的问题
- HtmlTabChart 滚动条: 修复页面出现滚动条的问题,改用 flexbox 布局
v2.4.1
更新 v2.4 版本
详情请看 history 和 ReadMe
v2.3.2
Full Changelog: 首次发布...v2.3.2
对 series 增加 batch_update api 。对 K线图 批量更新,进一步加速
首次发布
-- 首次发布
-- 其他
其中 node_modules 为js bundle 构建依赖,若自行下载依赖识别,可以本 node_modules.zip 临时替代
node_modules.zip
替代方法,解压 node_modules.zip 获得 node_modules 文件夹,然后放到 lightweight-charts-python 文件夹目录中
Full Changelog: https://github.com/One-sixth/lightweight-charts-python/commits/%E9%A6%96%E6%AC%A1%E5%8F%91%E5%B8%83