Читайте также:
|
|
Методика построения графика функции
График изображается в виде ломаной линии, соединяющей точки, лежащие на графике (производится кусочно-линейная аппроксимация кривой графика). Такая аппроксимация дает хороший результат при достаточно малом шаге.
Этап 1: вычислить массивы значений аргумента и соответствующих значений функции. Шаг изменения аргумента зависит от выбранного диапазона изменений аргумента и количества точек, и вычисляется по формуле:
h=(Xmax-Xmin)/(k-1),
где К – количество точек графика. Параллельно с созданием массивов нужно определить минимальное и максимальное значения функции, что необходимо для проведения масштабирования.
Этап 2: определить координаты точек графика, выраженные в экранных координатах с учетом размеров выбранного поля вывода графика (Xn,Yn; Xk,Yk), т.е. нужно провести масштабирование. Масштабирование по каждой из координатных осей производится в соответствии с общей формулой:
M = diapNum/diapVal,
где diapNum = maxK-minK - диапазон номеров позиций экрана, т.е. разность максимальной и минимальной координат поля вывода;
diapVal = maxF-minF - диапазон значений величины, откладываемой по оси абсцисс (ординат), т.е. разность максимального и минимального значений аргумента (функции).
Тогда: номер позиции по оси Х точки графика определяется из выражения:
coordX[i] = round((X[i] - Xmin)*diapG/diapX))+Xn,
где coordX[i] - номер позиции в строке для i-ой точки;
X[i] - значение аргумента в i-ой точке;
Xmin - минимальное значение аргумента;
diapG = Xk-Xn – диапазон позиций вдоль оси Х поля вывода;
diapX = Xmax-Xmin - диапазон значений аргумента;
номер позиции по оси Y точки графика определяется из выражения:
coordY[i] = round((Ymax - Y[i])*diapV/diapY))+Yn,
где coordY[i] - номер позиции в столбце для i-ой точки;
Y[i] - значение функции в i-ой точке;
Ymax - максимальное значение функции;
diapV = Yk-Yn – диапазон позиций вдоль оси Y поля вывода;
diapY = Ymax - Ymin - диапазон значений функции.
Дата добавления: 2015-04-20; просмотров: 87 | Поможем написать вашу работу | Нарушение авторских прав |