- •5 лекция
- •ROOT
- •ROOT: справочная информация
- •ООП и классы С++
- •Указатели
- •Структура ROOT
- •Принятые в ROOT обозначения
- •Машинно-независимые типы данных
- •ROOT: начало работы
- •C/C++ интерпретатор CINT
- •Пример простейшей сессии: построение гистограммы значений, распределенных по Гауссу
- •Скрипты: неименованные скрипты
- •Скрипты: именованные скрипты
- •Преобразование HBOOK/PAW в ROOT
- •6 лекция
- •Гистограммы в ROOT
- •Создание гистограммы
- •Внесение значений в гистограмму
- •Рисование гистограммы, опции рисования
- •Пример создания, заполнения и рисования гистограммы
- •Информация, выводимая по умолчанию
- •Поле для рисования canvas
- •Пример. Сохранение изображения на диск
- •Сложение, деление и умножение гистограмм
- •Прочие аспекты работы с гистограммами
- •Фитирование гистограмм: FitPanel
- •Вывод результатов фита
- •Команды фитирования
- •Фитирование функцией, определенной пользователем
- •7 лекция
- •Сохранение гистограмм на диск
- •Работа с файлами: ROOT-директория
- •Работа с файлами
- •Сохранение гистограмм в файл
- •Двумерные гистограммы
- •Пример работы с 2D-гистограммой
- •Параметры рисования
- •Графики
- •Графики. Опции рисования
- •Таблицы цветов и стилей маркеров
- •Варианты рисования
- •Два графика на одной картинке
- •График с погрешностями
- •График с погрешностями
- •8 лекция
- •Деревья
- •Создание дерева и ветвей
- •Создание простейшего дерева
- •Информация о дереве
- •Просмотр содержимого дерева с помощью TBrowser
- •Чтение дерева
- •Чтение дерева. Пример скрипта
- •Результат выполнения скрипта
- •Анализ данных дерева: метод TTree::Draw
Создание гистограммы
Общий синтаксис создания гистограммы
TH1F *h1 = new TH1F("HistName","Histogram title",Nbins,xmin,xmax)
Создается гистограмма (объект класса TH1F) и указатель h1 на этот объект
5 параметров, передаваемых конструктору гистограммы
HistName |
имя гистограммы, без пробелов |
Histogram title |
заголовок гистограммы |
Nbins |
число бинов в гистограмме (целая величина) |
xmin, xmax |
диапазон изменения гистограммируемой величины |
Внесение значений в гистограмму
Для внесения значений в гистограмму используется метод Fill(value), где value — значение, которое требуется занести
h1->Fill(24.7)
Метод Fill(value) увеличивает содержимое бина, к которому принадлежит значение value, на единицу
Чтобы внести значение с некоторым весом w, воспользуйтесь методом
Fill(value, w)
Внести значение 7.2 трижды:
h1->Fill(7.2,3)
Вес может быть отрицательной величиной
Рисование гистограммы, опции рисования
Для рисования гистограммы используется метод Draw():
h1->Draw()
В методе Draw() можно задавать различные опции рисования
Например, h1->Draw("C")
С — провести кривую через значения бинов
P — нарисовать маркеры для каждого значения
E — нарисовать погрешности значений
Опции можно совмещать, безо всяких пробелов:
h1->Draw("CP")
Чтобы нарисовать две гистограммы на одном рисунке, следует задать опцию same для второй:
h1->Draw()
h2->Draw("same")
Пример создания, заполнения и рисования гистограммы
Создадим гистограмму
TH1F *h1 = new TH1F("h1", "Example histo",16,-4,4)
Заполним гистограмму, последовательно применяя методы Fill(value)
и Fill(value, w)
h1->Fill(-2.3)
h1->Fill(-0.9)
h1->Fill(0,3)
h1->Fill(1.1,2)
h1->Fill(2.7)
Нарисуем гистограмму:
h1->Draw()
