使用boost::histogram::make_profile制作直方图
boost::histogram是一个C ++库,旨在提供一组用于直方图的高级数据结构和算法。其中,make_profile是一个函数,它可以从2D数据中创建一维直方图。
以下是一个使用make_profile函数的简单示例程序。
#include <iostream>
#include <vector>
#include <boost/histogram.hpp>
int main()
{
// 数据准备
std::vector<double> x{1.0, 2.0, 2.5, 3.0, 4.0};
std::vector<double> y{2.0, 1.0, 3.0, 2.0, 1.0};
// 创建轴
auto xaxis = boost::histogram::make_axis<double>(boost::histogram::axis::regular<>(5, 1.0, 4.0));
auto yaxis = boost::histogram::make_axis<double>(boost::histogram::axis::regular<>(5, 1.0, 4.0));
// 创建直方图
auto h = boost::histogram::make_profile({xaxis, yaxis});
// 填充直方图
for (std::size_t i = 0; i < x.size(); ++i) {