// Copyright 2015-2018 Hans Dembinski // // Distributed under the Boost Software License, Version 1.0. // (See accompanying file LICENSE_1_0.txt // or copy at http://www.boost.org/LICENSE_1_0.txt) //[ guide_histogram_streaming #include #include #include #include #include #include #include namespace bh = boost::histogram; int main() { namespace axis = bh::axis; auto h = bh::make_histogram( axis::regular<>(2, -1, 1), axis::regular>(2, 1, 10, "axis 1"), axis::circular(4, 0.1, 1.0), // axis without metadata axis::variable, std::string, axis::option_type::none>( {-1, 0, 1}, "axis 3"), axis::category<>({2, 1, 3}, "axis 4"), axis::integer<>(-1, 1, "axis 5")); std::ostringstream os; os << h; std::cout << os.str() << std::endl; assert(os.str() == "histogram(\n" " regular(2, -1, 1, options=uoflow),\n" " regular_log(2, 1, 10, metadata=\"axis 1\", options=uoflow),\n" " circular(4, 0.1, 1.1, options=overflow),\n" " variable(-1, 0, 1, metadata=\"axis 3\", options=none),\n" " category(2, 1, 3, metadata=\"axis 4\", options=overflow),\n" " integer(-1, 1, metadata=\"axis 5\", options=uoflow),\n" ")"); } //]