Я работаю над программой в Scilab, которая численно интегрирует функцию по правилу трапеции (без использования встроенной функции). У меня нет проблем с интеграцией или построением функции, но я хочу наложить реальную функцию на график трапеций, окрашенных в.Интеграция трапеции в Scilab - Polygon Color Fill Stops
По какой-то причине, когда я устанавливаю границы a = 0 - b = 3 , не проблема, я получаю именно то, что хочу. Однако, когда я устанавливаю границы выше 3, трапеции будут по-прежнему отображаться (по линиям), но они не будут окрашены. В приведенном ниже коде цвет останавливается на 3. Если я нахожу график от 0 до 6, например, цвет останавливается на полпути. 3-6, и вообще нет цвета.
Вот соответствующие разделы кода:
deff('[y] = f(x)','y = e^(x^2)'); // Definition of function
a = 0; // Lower bound
b = 4; // Upper bound
n = 20; // Number of intervals
h = ((b - a)/n); // Interval spacing
x = a:h:b; // Array of positions for division
и
for i = 1:n+1
y(i) = f(x(i));
end
и
for i = 1:n // Plot colored trapezoids
x_start = a+(h*(i-1));
x_end = a+(h*(i));
y_start = y(i);
y_end = y(i+1);
xpts = [x_start, x_end, x_end, x_start];
ypts = [y_start, y_end, 0, 0];
xfpoly(xpts,ypts,3);
end
This is the plot output for a = 0, b = 3
Ну для начала 3 не является допустимым значением закрытия в xfpoly – awiebe
@awiebe Нет, это законно: это должно быть целым числом, цвет, используемый для заполнения многоугольника (см Scilab справку для получения более подробной информации) , – Attila