Вероятности событий графа в C#

Пример Вычислить вероятность события, происходящего в данном количестве испытаний в C# , показывает, как вычислять вероятности событий. Этот пример отображает результаты. Вы можете использовать этот пример, чтобы понять, как изменяются вероятности.

Введите вероятность события и максимальное количество выполненных испытаний. Когда вы нажмете «Go», программа выполнит следующий код.

В массиве Points хранятся данные для текущих параметров вероятности. Обработчик событий Click кнопки Go кнопки анализирует количество введенных событий и делает массив Points достаточно большим, чтобы удерживать вероятности событий. Затем код анализирует вероятность события и преобразует его в десятичное значение (как в 0,5 вместо 50%).

Далее код перебирает нужные события, вычисляя вероятности событий и сохраняя результаты в массиве Points. Для удобства рисования код сохраняет значение вероятности в процентах.

После вычисления всех вероятностей событий код обновляет picGraph PictureBox, чтобы отобразить результаты. Следующий код показывает, как обработчик событий picGraph управления Paint рисует график.

Этот код сначала очищает PictureBox. Тогда, если нет точек данных, они просто возвращаются.

Затем код создает матрицу преобразования для преобразования данных в соответствии с PictureBox. Для этого он создает RectangleF, представляющий глобальные координатные границы точек. Они колеблются от 0 до 100 в направлении Y (проценты) и 0 к числу событий в направлении X.

В коде также создается массив точек, указывающий, где на PictureBox должны отображаться верхние левые, верхние и нижние левые углы границ глобальной границы. Он использует RectangleF и массив точек для создания Matrix, который отображает из координат мира в координаты PictureBox.

Затем программа рисует график. Он создает тонкую ручку для рисования и создает объект StringFormat для использования при рисовании текста.

Далее код рисует горизонтальные линии для каждой множественной вероятности 10%. Он рисует линию, соединяющую точки (0, i) - (Points.Length, i) для i = 10, 20, 30 и т. д. Для этого код должен преобразовывать координаты точек, чтобы они соответствовали преобразованным точкам на графике. Он делает это, вызывая метод преобразования TransformPoints матрицы преобразования.

После того, как он рисует каждую горизонтальную линию, код также рисует текст, дающий вероятность линии. Он позиционирует текст в левой конечной точке линии (0, i) и центрируется по вертикали на линии.

Далее код рисует ось X. Он перебирает значения между 0 и числом событий, которые рисуют метки вертикального тика и номера событий.

После рисования осей и их меток рисование фактического графика прост. Код применяет матрицу преобразования к объекту Graphics и вызывает метод DrawLines объекта для рисования строк.

Источник: http://csharphelper.com/blog/2017/05/graph-event-probabilities-in-c/

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (Пока оценок нет)

Add a Comment

Ваш e-mail не будет опубликован. Обязательные поля помечены *