首页
/ Rerun 0.23.0发布:支持多标量日志与向后兼容的.rrd格式

Rerun 0.23.0发布:支持多标量日志与向后兼容的.rrd格式

2025-06-07 04:14:50作者:殷蕙予

Rerun是一个面向多模态和时序数据的可视化分析工具,它提供了简单易用的数据库和可视化功能。通过Rerun,开发者可以轻松记录、存储和可视化各种类型的数据,特别适合处理包含时间维度的复杂数据流。

核心功能升级

多标量日志支持

在0.23.0版本中,Rerun引入了对同一实体路径下多标量信号的支持。这一改进使得开发者能够将逻辑上相关的数据(如LeRobot数据集中的动作值或陀螺仪测量值)记录在同一个实体路径下。

以前,开发者需要为每个分量创建单独的实体路径:

rr.log("gyroscope/x", rr.Scalar(measurement[0]))
rr.log("gyroscope/y", rr.Scalar(measurement[1]))
rr.log("gyroscope/z", rr.Scalar(measurement[2]))

现在可以简化为:

rr.log("gyroscope", rr.Scalars(measurement))

这一改进不仅简化了代码,还使得数据组织更加直观。同时,SeriesLineSeriesPoints原型现在包含visible_series组件,允许开发者控制哪些系列出现在可视化中,而隐藏的系列仍会显示在图例中。

向后兼容的.rrd格式

0.23.0版本对Rerun的文件格式进行了重大改进,迁移到了基于protobuf的新格式。这一变化虽然带来了短暂的兼容性中断(旧版本的.rrd文件将无法加载),但为未来的版本提供了更好的向后兼容性保证。

新格式的设计考虑了长期的数据兼容性需求,确保未来的Rerun版本能够读取当前版本创建的文件。对于需要长期存储分析数据的用户来说,这是一个重要的改进。

新增功能特性

回调API

Rerun 0.23.0为Jupyter Notebook和JavaScript环境添加了回调API支持。这一功能使得开发者能够轻松构建简单的标注工具,响应视图中的选择变化和时间线变化事件。

虽然目前这一API还仅限于Notebook和JavaScript环境,但它为交互式数据分析开辟了新的可能性。开发者可以利用这一功能构建自定义的用户界面和交互逻辑。

记录属性

新版本引入了"记录属性"的概念,允许开发者向记录添加元数据。例如,可以使用.send_recording_name("我的记录")为记录命名,这个名字将显示在查看器的记录面板中。

此外,开发者还可以通过通用的.send_property()方法记录任意数据。这些属性作为静态数据记录,也会出现在时间线中。当选择记录时,侧边面板会显示属性的概览。

实验性表格支持

Rerun正在改进对表格和数据框的支持。0.23.0版本引入了实验性的send_tableAPI,允许通过Python SDK和Notebook发送任意的Arrow记录批次。

虽然这一功能目前还处于早期阶段,但它为未来更强大的表格分析功能奠定了基础。开发者可以期待未来版本中加入的过滤、汇总统计等高级分析功能。

技术细节与改进

通信协议升级

Rerun现在主要依赖gRPC进行SDK与查看器之间的通信。这一变化带来了更高效的网络传输和更可靠的连接,但也意味着连接URL现在需要rerun://(TLS)或rerun+http://(未加密)前缀。

时间处理改进

新版本对时间处理进行了多项改进:

  • 引入了rr.IndexColumnrr.set_indexAPI
  • 统一了时间单位名称
  • 改进了时间轴控制和时间上下文菜单

开发者体验

  • 更新了最低支持的Rust版本(MSRV)到1.84
  • 对Python SDK进行了多项清理和改进
  • 增加了更多的类型检查和lint规则
  • 移除了多个已弃用的API

可视化与用户体验

Rerun 0.23.0在可视化方面也有多项改进:

  • 支持从LeRobot数据集加载深度图像
  • 改进了绘图高亮的一致性
  • 添加了复制实体路径到剪贴板的功能
  • 改进了时间序列显示范围的处理
  • 增加了对JPEG/TIFF图像EXIF数据的显示

总结

Rerun 0.23.0是一个重要的里程碑版本,它通过引入多标量日志支持和改进文件格式,为未来的功能扩展奠定了坚实基础。虽然这些变化带来了短暂的兼容性中断,但它们为长期的数据兼容性和功能扩展提供了更好的支持。

对于现有用户,建议参考官方迁移指南进行升级。新用户可以借助改进的API和文档更轻松地上手这一强大的数据可视化工具。随着表格支持和回调API等新功能的逐步成熟,Rerun正在成长为一个更加全面和强大的数据分析平台。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
docsdocs
OpenHarmony documentation | OpenHarmony开发者文档
Dockerfile
149
1.95 K
kernelkernel
deepin linux kernel
C
22
6
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
981
395
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
192
274
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
932
555
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
145
190
nop-entropynop-entropy
Nop Platform 2.0是基于可逆计算理论实现的采用面向语言编程范式的新一代低代码开发平台,包含基于全新原理从零开始研发的GraphQL引擎、ORM引擎、工作流引擎、报表引擎、规则引擎、批处理引引擎等完整设计。nop-entropy是它的后端部分,采用java语言实现,可选择集成Spring框架或者Quarkus框架。中小企业可以免费商用
Java
8
0
金融AI编程实战金融AI编程实战
为非计算机科班出身 (例如财经类高校金融学院) 同学量身定制,新手友好,让学生以亲身实践开源开发的方式,学会使用计算机自动化自己的科研/创新工作。案例以量化投资为主线,涉及 Bash、Python、SQL、BI、AI 等全技术栈,培养面向未来的数智化人才 (如数据工程师、数据分析师、数据科学家、数据决策者、量化投资人)。
Jupyter Notebook
75
66
openHiTLS-examplesopenHiTLS-examples
本仓将为广大高校开发者提供开源实践和创新开发平台,收集和展示openHiTLS示例代码及创新应用,欢迎大家投稿,让全世界看到您的精巧密码实现设计,也让更多人通过您的优秀成果,理解、喜爱上密码技术。
C
65
519
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.11 K
0