МегаПредмет

ПОЗНАВАТЕЛЬНОЕ

Сила воли ведет к действию, а позитивные действия формируют позитивное отношение


Как определить диапазон голоса - ваш вокал


Игровые автоматы с быстрым выводом


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


Целительная привычка


Как самому избавиться от обидчивости


Противоречивые взгляды на качества, присущие мужчинам


Тренинг уверенности в себе


Вкуснейший "Салат из свеклы с чесноком"


Натюрморт и его изобразительные возможности


Применение, как принимать мумие? Мумие для волос, лица, при переломах, при кровотечении и т.д.


Как научиться брать на себя ответственность


Зачем нужны границы в отношениях с детьми?


Световозвращающие элементы на детской одежде


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


Как слышать голос Бога


Классификация ожирения по ИМТ (ВОЗ)


Глава 3. Завет мужчины с женщиной


Оси и плоскости тела человека


Оси и плоскости тела человека - Тело человека состоит из определенных топографических частей и участков, в которых расположены органы, мышцы, сосуды, нервы и т.д.


Отёска стен и прирубка косяков Отёска стен и прирубка косяков - Когда на доме не достаёт окон и дверей, красивое высокое крыльцо ещё только в воображении, приходится подниматься с улицы в дом по трапу.


Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) Дифференциальные уравнения второго порядка (модель рынка с прогнозируемыми ценами) - В простых моделях рынка спрос и предложение обычно полагают зависящими только от текущей цены на товар.

Построение графика функции





Задача состоит в том, чтобы создать визуальное приложение, при помощи которого можно строить график заданной наперед функции одной переменной.

Для примера возьмем функцию y(x)=x-cos(x).

Создаем новый проект.

В свойствах главной формы подписываем ее как: Graph.

Помещаем на форму элемент Chart, который будет служить окном для отображения графика.

В свойствах Chart даем ему программное имя – graphchart. При помощи свойства Titles добавляем заголовок к Chart, а затем подписываем его, как: «График функции y(x)=x-cos(x)».

При помощи свойства Series изменим тип графика из гистограммы, на сглаженный график функции (в Series1 значение свойства ChartType из Column изменить на Spline), как показано на рисунке 3.3.

Рисунок 3.3 – Выбор типа графика

Здесь же свойству LegendText установим значение y(x)=x-cos(x), тем самым зададим легенду нашего графика.

Добавляем на форму элемент Button, который будет служить кнопкой для построения графика.

В свойствах даем ему программное имя - graph_button и подпись – «Строить график» (свойства Name и Text соответственно).

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

Рисунок 3.4 – Дизайн приложения из примера 2

Дизайн готов, осталось написать программный код.

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

//масштабирование по оси Х

graphchart->ChartAreas[0]->AxisX->ScaleView->Zoom(0,100); // задаем область масштабирования

graphchart->ChartAreas[0]->CursorX->IsUserEnabled = true; //даем пользователю право масштабировать

graphchart->ChartAreas[0]->CursorX->IsUserSelectionEnabled = true; //даем пользователю право выбирать интервал масштабирования непосредственно на графике

graphchart->ChartAreas[0]->AxisX->ScaleView->Zoomable = true; //включаем собственно режим масштабирования по оси Х

graphchart->ChartAreas[0]->AxisX->ScrollBar->IsPositionedInside = true; //добавляем полосы прокрутки

 

//аналогично для оси Y

graphchart->ChartAreas[0]->AxisY->ScaleView->Zoom(0, 100);

graphchart->ChartAreas[0]->CursorY->IsUserEnabled = true;

graphchart->ChartAreas[0]->CursorY->IsUserSelectionEnabled = true;

graphchart->ChartAreas[0]->AxisY->ScaleView->Zoomable = true;

graphchart->ChartAreas[0]->AxisY->ScrollBar->IsPositionedInside = true;

 

Этот код является настройкой нашего графика. Он включает свойства позволяющие пользователю масштабировать график по осям X и Y в диапазоне от 0 до 100 в декартовой системе координат.

Масштабирование будет происходить путем выделения области на графике, которую необходимо увеличить.

Осталось построить непосредственно график, для этого событию Click нашего элемента Button зададим следующий код:

for (int i = 0; i < 100; i++){ //строим по точкам график, согласно формуле

graphchart->Series[0]->Points->AddXY(i,i-Math::Cos(i));

}

Данный код строит гладкий график по точкам от 0 до 100, по заданной формуле.

Заметим, что метод AddXY не является методом построения графика, а лишь добавляет точку по указанным координатам.

Из этого следует, что данный метод применим ко всем типам диаграмм.

Результаты работы показаны на рисунке 3.5, после масштабирования на рисунке 3.6.

Рисунок 3.5 – Результаты работы программы из примера 2 (до масштабирования)

Рисунок 3.6 – Результаты работы программы из примера 2 (после масштабирования)





©2015 www.megapredmet.ru Все права принадлежат авторам размещенных материалов.