多功能、高性能的numpy直方图工具包。
histbook的Python项目详细描述
histbook从numpy数组计算直方图。它不同于大多数其他的直方图工具,因为它的直方图主要是数字表,而不是显示图形。直方图可以通过一个大型数据集迭代填充和重新填充,也可以并行填充,然后再与addition*结合使用。直方图具有任意多个维度,具有方便的选择、重新绑定和投影到低维空间的方法。
轴维度由代数表达式管理,而不是字符串标签或索引位置,因此它们是可计算的:一个名为^ {TT1}$的轴需要两个NUPY数组,^ {TT2} $和^ {TT3}$,在填充直方图之前将被添加。不同轴上的表达式或同一本“书”(命名直方图的集合)中的不同直方图以优化的方式计算,尽可能重用子表达式,以便在不放弃清晰度的情况下更快地填充。
直方图数据可以导出为各种格式,例如Pandas、ROOT和HEPData。它也可以用Vega-Lite绘制,这使得将数据的许多维度投影为覆盖和网格的工作变得很短。
(*在这方面,histbook就像是为粒子物理学开发的历史编程包,从1970年代的CERN HBOOK(名称相似)到现在的ROOT。)
安装
像任何其他python包一样安装histbook:
pip install histbook --user
或者类似的(如果您愿意,可以使用sudo,--user,virtualenv,或者在conda中使用pip)。
建议依赖项:
- Pandas更方便地编程访问bin内容
- Jupyter Notebook用于隔行组织编程和绘图
- JupyterLab对于一个完整的类似ide的环境
- ipyvega查看jupyter笔记本中的绘图(jupyterlab不需要)
- Altair将柱状图与牵牛星图形混合(在jupyter笔记本和jupyterlab中都可用)
- VegaScope在网页浏览器中查看绘图,而不使用jupyter
- ROOT在完整的统计工具包中分析直方图
- uproot在没有完整根框架的情况下访问根文件
教程
有关tutorial,请参见project homepage。
交互式教程
在活页夹上运行this tutorial。