直方图与随机数:数据处理与生成的实用指南
1. 直方图的输入与输出
1.1 读取直方图
可以使用 HBook
类从 CFBook
库填充的文件中检索和可视化直方图。以下是一个示例,假设直方图由C++外部程序填充并保存在 cpp.xml
中:
from jhplot import *
hb = HBook() # 创建HBook实例
hb.read('cpp.xml') # 读取输入XML文件
print hb.listH1D() # 列出所有直方图
h1 = hb.getH1D(10) # 获取ID为10的H1D直方图
c1.draw(h1) # 绘制直方图
在上述代码中, c1
代表 HPlot
类的一个实例。
1.2 保存直方图
HBook
类也可用于将直方图或其他对象保存到XML文件中,使用其 write()
方法,示例如下:
from jhplot import *
hb = HBook('hbook')
h3 = H1D('test', 2, 0.0, 1.)
h4 = H2D('test', 5, 0.0, 1., 4, 0., 1.)
hb.add(30, h3) # 添加到HBook,ID为30
hb.add(40,