Путь разработчика    

Данные графика со стандартными диапазонами отклонения в C#


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

В этом примере используется другой набор данных для каждого из возрастов с 6 по 13. (Вы можете использовать другие виды данных, такие как продажи в течение нескольких лет, дорожные сбои в течение нескольких лет, количество тестов по сравнению с часами обучения и т. д. .) Черная линия, проходящая через график, показывает средства для разных наборов данных. Цветные полосы показывают 0,5, 1,5 и 2,5 стандартных отклонения от средств.

Следующий код показывает, как пример инициализирует свои данные.

Python

Этот код просто создает массивы для хранения средних и стандартных отклонений для каждого возраста. Затем он создает массив тестовых точек для построения графика на графике.

Метод DrawGraph примера рисует график. Это довольно долго, так что это показано здесь по частям. Вот первая часть:

Python

Этот код вычисляет минимальные и максимальные значения, которые программа должна отображать. Для этого он проходит через средства и добавляет и вычитает в 2,5 раза стандартное отклонение для каждого.

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

Следующий фрагмент кода рисует базовый граф.

Python

Этот код создает Bitmap для соответствия PictureBox, а затем создает связанный объект Graphics.

Затем он создает Pen с толщиной 0. Когда вы рисуете с помощью Pen с толщиной 0, библиотека рисования GDI + рисует ширину линии 1, даже если линии линии трансформируются. Если вы используете линию с другой толщиной, преобразование также относится к ширине линии, поэтому вы получаете искаженные линии. В этом примере весь график покрывается линиями. (Установите толщину на 1 и убедитесь сами.)

Код устанавливает свойство Graphics объекта SmoothingMode для создания плавных линий. Затем он устанавливает свойство Transform, чтобы строки отображались из мировых координат в систему координат Bitmap.

Далее код создает серию кистей и передает их и соответствующим образом окрашивает Pen в метод DrawEnvelope, чтобы нарисовать полосы, показывающие кратные стандартным отклонениям. (Этот метод описан ниже).

Этот фрагмент кода завершен путем рисования кривой, соединяющей средства.

Следующий фрагмент кода рисует ось X.

Python

Этот код создает объекты Font и StringFormat для использования при рисовании текста. Затем он рисует линию оси X и отметки.

Чтобы пометить метки, код создает два списка, один из которых содержит место размещения каждой метки и текст ярлыка. Он преобразует список точек в массив и использует метод transform объекта transform для сопоставления точек из мировых координат с системой координат Bitmap.

Далее код сбрасывает свойство Transform объекта Graphics объекта в новую Matrix, которая представляет преобразование идентичности. Это не позволяет преобразованию применить текст ярлыка и исказить символы.

Код заканчивается путем циклического перехода по меткам, рисуя каждую метку в ее преобразованном местоположении.

Код, который рисует ось Y, подобен, поэтому он не показан здесь.

Следующий код показывает последнюю часть метода DrawGraph.

Python

Этот код просто разбивает точки тестовых данных.

В следующем коде показан метод DrawEnvelope, который рисует одну из затененных областей на графике.

Python

Этот метод создает список объектов PointF. Затем он перебирает точки добавления данных в список. Сначала он идет слева направо, добавляя средние значения плюс кратное их стандартным отклонениям, чтобы получить координаты Y вдоль вершины области, которую он рисует. Затем метод идет слева направо, вычитая кратное их стандартным отклонениям от средних значений, чтобы получить координаты Y вдоль нижней части области.

После того, как он сгенерировал точки, представляющие область, код заполнит ее, а затем очерчивает ее с помощью Brush и Pen, переданных в качестве параметров. (В этом примере Brush и Pen имеют один и тот же цвет, поэтому вы не видите эффект Pen. Я изначально планировал чтобы очертить каждую область немного темным цветом, но решили, что эта версия выглядит лучше.)

Источник: http://csharphelper.com/blog/2015/09/plot-data-with-standard-deviation-ranges-in-c/



Источник:
  • Гриль барбекю
  • каминов, барбекю, монтаж дымоходов, ремонт печей
  • promo.catering

Отзывы (через Facebook):

Оставить отзыв с помощью аккаунта FaceBook:

Как объекты становятся пригодными для сбора мусора в Java?

Объект не станет кандидатом на сбор мусора, пока все ссылки на него не будут отброшены. Объект отмечен как имеющий право на сбор мусора, когда он больше не...

17 09 2019 0:38:51

Использовать лямбда-выражения в C#

Лямбда-выражения в основном представляют собой сокращенную нотацию для создания анонимного метода. Существует несколько форматов, самый простой из которых...

16 09 2019 11:51:54

Формы размера, чтобы соответствовать их содержимому в C#

В этом примере показано, как размер форм подходит для их содержимого. Выяснить, как форматы размера могут быть сложными, особенно если форма содержит MenuS...

15 09 2019 13:56:18

Разница между статическими и нестатистическими методами Java

Статический метод принадлежит классу, а нестатический метод принадлежит объекту класса. Статические методы полезны, если у вас есть только один экземпляр,...

14 09 2019 4:59:47

Получить операционную систему компьютера в C#

В этом примере используется следующий код для отображения версии операционной системы при ее запуске. Этот пример просто получает объект System.Environment...

13 09 2019 23:53:56

Как сделать стрельбу в Unity 2D с пулом объектов

В сегодняшнем уроке мы разберем как сделать стрельбу в Unity 2D с использованием пула объектов (Object pool) для реализации этого менее затратно....

12 09 2019 5:20:36

Назначение оператора «/» и «//» в python?

Разделение («/»): делит левый. Отдел работает на Python так, как он математически определен. Floor Division ("//"): разделение операндов, где результатом я...

11 09 2019 8:15:45

Удалите нецифровые или не-буквы из строки в C#

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

10 09 2019 1:39:44

Языки программирования для начинающих: с чего лучше начать?

Какие языки программирования подходят для начинающих? С какого лучше начать? В наше время программирование стало одной из самых востребовательных и высокооплачиваемых...

09 09 2019 0:43:48

finally block в Java

Блок Java finally всегда выполняется независимо от того, обрабатывается ли исключение или нет. Он идентифицирует блок операторов, который должен выполнятьс...

08 09 2019 22:37:25

Как открыть и прочитать URL-адрес в Java

Чтение с URL-адреса так же просто, как чтение из входного потока. URL - это аббревиатура Uniform Resource Locator. Java-программы, которые взаимодействуют...

07 09 2019 11:55:11

Изучаем C++ через программирование игр

Если вы хотите научиться программировать первоклассные игры, вам просrо необходимо изучить язык С++. Эrа книга поможет вам освоить разработку игр с самых а...

06 09 2019 5:52:19

Ошибка компиляции "Can not Find Symbol" в Java

Ошибки « Не удается найти символ» обычно возникают, когда вы пытаетесь ссылаться на необъявленную переменную в коде. Ошибка « Не удается найти символ» означа...

05 09 2019 6:41:14

Эффективный и современный С++: 42 рекомендации по использованию C++11 и C++14 (Скотт Мейерс)

В этой книге отражен бесценный опыт ее автора как программиста на C++. Новые возможности этого языка программирования, появившиеся в стандартах C++11 и C++...

04 09 2019 12:34:40

Нарисуйте анимированный эпитрохоид в C#

В этом примере показан один из способов рисования анимированного эпитрохоида. ( См. Пример Нарисуйте эпитрохоид в C# для объяснения того, как нарисуйте эпит...

03 09 2019 20:37:31

Сохранение и восстановление изображений, сделанных пользователем в C#

Оказывается, это замечательно легко. Следующий код показывает, как программа сохраняет объекты Polyline, хранящиеся в списке Polylines. В коде отображается...

02 09 2019 13:58:37

Длина строки в C#

Свойство Length в String Class возвращает общее количество символов в String. Синтаксис: int string.length Возвращает: Целое число: количество символов в у...

01 09 2019 13:23:36

Что такое NullPointerException в Java

NullPointerException - исключение RuntimeException. Исключения в Runtime являются критическими и не могут быть пойманы во время компиляции. Они приводят к...

31 08 2019 13:36:46

Язык программирования Python (Д.С.Откидач)

Python является простым и, в то же время, мощным интерпретируемым объектно-ориентированным языком программирования. Он предоставляет структуры данных высок...

30 08 2019 11:50:32

Среда разработки PyCharm

PyCharm – интегрированная среда разработки для Python. Разрабатывалась компанией JetBrains. За основу взята другая интегрированная среда разработки Intelli...

29 08 2019 18:19:14

Как нарисовать текст, заполненный картиной в C#

В этом примере показано, как вы можете нарисовать текст, заполненный изображением. Он использует два изображения, добавленные в проект в качестве ресурсов....

28 08 2019 15:13:30

Сохранение управляющих изображений WPF в C#

Иногда мне нужно сохранять управляющие изображения WPF с прозрачным фоном по той или иной причине. На этот раз мне нужно было сделать несколько значков, ко...

27 08 2019 12:52:18

Закрыть всплывающие окна Mozilla Firefox в C#

Некоторые средства браузера пытаются заблокировать всплывающие окна рекламы, но в последнее время некоторые из них пробираются через мою систему, поэтому я...

26 08 2019 16:23:12

Использование базовой вставки с пользовательскими торцевыми заглушками в C#

Пример Нарисуйте линии с пользовательскими заглушками в C# показывает, как рисовать линии с пользовательскими заглушками. Например, используя эти методы, в...

25 08 2019 6:54:35

Отображение текста на ProgressBar в C#

Было бы неплохо, если бы вы могли отобразить сообщение о ходе работы над ProgressBar. К сожалению, вы не можете этого сделать. Вы даже не можете помещать я...

24 08 2019 2:22:22

Используйте событие Validating в C#

Когда фокус перемещается от одного элемента управления к другому, первый может запустить событие Validating. Это происходит только в том случае, если свойс...

23 08 2019 2:44:37

TreeMap в Java

Класс TreeMap реализует интерфейс карты, аналогичный классу HashMap. Он сохраняет свои записи в порядке возрастания, отсортированные в соответствии с естес...

22 08 2019 0:55:53

Получить информацию о ярлыке Windows в C#

Метод GetShortcutInfo, показанный в следующем коде, получает информацию о ярлыке. Программа сначала создает объект Shell32.Shell для работы с оболочкой Win...

21 08 2019 23:19:29

Java Autoboxing и Unboxing

Autoboxing и Unboxing - это функции, включенные в Java 1.5, где автоматическое преобразование происходит от примитивного типа до соответствующего класса кл...

20 08 2019 8:37:56

Выполнить анимацию свойств Windows Forms в C#

Изменение свойств элемента управления со временем называется анимацией свойств. Отслеживание того, где свойства элемента управления, например, его положени...

19 08 2019 21:13:24

C# 4.0 Полное руководство (Герберт Шилдт)

В книге "C# 4.0 Полное руководство" Г. Шилдта по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все осно...

18 08 2019 3:22:54

Изучаем C++ через программирование игр

Если вы хотите научиться программировать первоклассные игры, вам просrо необходимо изучить язык С++. Эrа книга поможет вам освоить разработку игр с самых а...

17 08 2019 19:23:54

Программирование на Java и С# для студента (О. В. Герман, Ю. О Герман)

Рассмотрены основные вопросы программирования на языках JAVA и С#, включая их сравнительное описание как двух важнейших и весьма сходных прикладных платфор...

16 08 2019 12:53:26

Сделайте движущийся фон в C#

В этом примере отображается текст с движущимся цветовым градиентом. Следующий ShadeRect метод содержит наиболее интересный код программы. Этот метод заполн...

15 08 2019 15:11:46

C# 6.0. Справочник. Полное описание языка (Джозеф Албахари, Бен Албахари)

Данное руководство, ставшее бестселлером, позволяет получить точные ответы практически на любые вопросы по C# 6.0, CLR и основным сборкам .NET Framework. П...

14 08 2019 14:26:35

Что такое объектная модель браузера в JavaScript

Модель объекта браузера (BOM) - это соглашение, специфичное для браузера, относящееся ко всем объектам, открываемым веб-браузером. Когда браузер анализируе...

13 08 2019 22:30:57

Класс Java HashSet

Класс HashSet расширяет AbstractSet и реализует заданный интерфейс. Набор представляет собой набор, который не содержит повторяющихся элементов и элементы...

12 08 2019 21:31:57

Преобразовать строку в Integer в C#

В этой статье мы напишем программу C# для преобразования строки в Integer с использованием метода Convert.ToInt32() Вывод: 6245...

11 08 2019 1:39:32

Сделайте слайдер с иглой в C#

Этот пример рисует вертикальную «иголку» в PictureBox, чтобы пользователь мог выбрать значение, как это делает TrackBar. Однако код выполняет весь чертеж,...

10 08 2019 12:55:11

Глобальные переменные в JavaScript

Как и другие языки программирования, JavaScript также имеет локальные и глобальные переменные. В JavaScript объекты и функции также являются переменными. О...

09 08 2019 8:47:16

Получите серийные номера системной платы и идентификаторы ЦП в C#

В этом примере показано, как получить серийные номера системной платы и идентификаторы Ц П. WMI ( Инструмент управления Windows) позволяет использовать SQL-п...

08 08 2019 5:20:46

Разница между @staticmethod и @classmethod в Python

Python @classmethod означает, что при вызове этого метода мы передаем класс как первый аргумент вместо экземпляра этого класса («self»). Функция @classmeth...

07 08 2019 11:52:29

Каковы final переменные в Java?

Конечным ключевым словом является зарезервированное ключевое слово в Java для ограничения пользователя и его можно применять к переменным-членам, методам,...

06 08 2019 2:57:57

Что такое литералы в Python?

Литерал - это краткий и легко видимый способ написать значение. Литералы представляют собой возможные варианты примитивных типов для этого языка. Некоторые...

05 08 2019 20:13:50

RandomAccessFile в Java

Java RandomAccessFile обеспечивает несущественный доступ к файлам. Он ведет себя как большой массив байтов, хранящихся в файловой системе. Это означает, чт...

04 08 2019 21:45:38


Parse error: syntax error, unexpected ',' in /home/users/9/9161484547/domains/flash-mx.ru/lessons/926.php on line 69